summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile.am554
-rw-r--r--man/systemd.service.xml5
-rw-r--r--po/LINGUAS1
-rwxr-xr-xpo/id.po576
-rw-r--r--src/basic/fs-util.c29
-rw-r--r--src/basic/fs-util.h2
-rw-r--r--src/basic/strv.c12
-rw-r--r--src/basic/strv.h4
-rw-r--r--src/journal/journal-verify.c15
-rw-r--r--src/journal/journalctl.c48
-rw-r--r--src/libsystemd/sd-bus/bus-match.c3
-rw-r--r--src/resolve/resolved-manager.c5
-rw-r--r--src/systemctl/systemctl.c50
-rw-r--r--src/test/test-fs-util.c46
-rw-r--r--src/test/test-path-util.c2
-rw-r--r--src/test/test-strv.c11
-rwxr-xr-xtest/networkd-test.py88
17 files changed, 1161 insertions, 290 deletions
diff --git a/Makefile.am b/Makefile.am
index 2206b70c95..0ec407520b 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -108,6 +108,7 @@ CLEAN_LOCAL_HOOKS =
pkginclude_HEADERS =
noinst_LTLIBRARIES =
lib_LTLIBRARIES =
+rootlibexec_LTLIBRARIES =
include_HEADERS =
noinst_DATA =
pkgconfigdata_DATA =
@@ -1078,12 +1079,51 @@ libshared_la_CFLAGS = \
libshared_la_LIBADD = \
libsystemd-internal.la \
+ libbasic.la \
libsystemd-journal-internal.la \
libudev-internal.la \
$(ACL_LIBS) \
$(LIBIDN_LIBS) \
$(SECCOMP_LIBS)
+rootlibexec_LTLIBRARIES += \
+ libsystemd-shared.la
+
+libsystemd_shared_la_SOURCES = \
+ $(libbasic_la_SOURCES) \
+ $(libshared_la_SOURCES) \
+ $(libsystemd_internal_la_SOURCES) \
+ $(libsystemd_journal_internal_la_SOURCES) \
+ $(libudev_internal_la_SOURCES)
+
+libsystemd_shared_la_CFLAGS = \
+ $(AM_CFLAGS) \
+ $(libbasic_la_CFLAGS) \
+ $(libshared_la_CFLAGS) \
+ $(libsystemd_internal_la_CFLAGS) \
+ $(libsystemd_journal_internal_la_CFLAGS) \
+ $(libudev_internal_la_CFLAGS) \
+ $(ACL_CFLAGS) \
+ $(LIBIDN_CFLAGS) \
+ $(SECCOMP_CFLAGS) \
+ -fvisibility=default
+
+# We can't use libshared_la_LIBADD here because it would
+# pull in libsystemd*-internal.la
+libsystemd_shared_la_LIBADD = \
+ $(libbasic_la_LIBADD) \
+ $(libsystemd_internal_la_LIBADD) \
+ $(libsystemd_journal_internal_la_LIBADD) \
+ $(libudev_internal_la_LIBADD) \
+ $(ACL_LIBS) \
+ $(LIBIDN_LIBS) \
+ $(SECCOMP_LIBS)
+
+libsystemd_shared_la_LDFLAGS = \
+ $(AM_LDFLAGS) \
+ -release $(PACKAGE_VERSION)
+
+
# -----------------------------------------------------------------------------
if HAVE_LIBIPTC
noinst_LTLIBRARIES += \
@@ -1244,7 +1284,7 @@ libcore_la_CFLAGS = \
$(SECCOMP_CFLAGS)
libcore_la_LIBADD = \
- libshared.la \
+ libsystemd-shared.la \
$(PAM_LIBS) \
$(AUDIT_LIBS) \
$(KMOD_LIBS) \
@@ -1637,7 +1677,7 @@ test_device_nodes_SOURCES = \
src/test/test-device-nodes.c
test_device_nodes_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_engine_SOURCES = \
src/test/test-engine.c
@@ -1688,7 +1728,7 @@ test_dns_domain_SOURCES = \
test_dns_domain_LDADD = \
libsystemd-network.la \
- libshared.la
+ libsystemd-shared.la
if ENABLE_EFI
@@ -1699,7 +1739,7 @@ test_boot_timestamps_SOURCES = \
src/test/test-boot-timestamps.c
test_boot_timestamps_LDADD = \
- libshared.la
+ libsystemd-shared.la
endif
test_unit_name_SOURCES = \
@@ -1728,29 +1768,35 @@ test_utf8_SOURCES = \
src/test/test-utf8.c
test_utf8_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_capability_SOURCES = \
src/test/test-capability.c
+test_capability_CFLAGS = \
+ $(AM_CFLAGS) \
+ $(CAP_CFLAGS)
+
test_capability_LDADD = \
- libshared.la
+ libsystemd-shared.la \
+ $(CAP_LIBS)
test_async_SOURCES = \
src/test/test-async.c
test_async_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_locale_util_SOURCES = \
src/test/test-locale-util.c
test_locale_util_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_copy_SOURCES = \
src/test/test-copy.c
+# Link statically to ensure file is large
test_copy_LDADD = \
libshared.la
@@ -1758,187 +1804,192 @@ test_sigbus_SOURCES = \
src/test/test-sigbus.c
test_sigbus_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_condition_SOURCES = \
src/test/test-condition.c
test_condition_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_fdset_SOURCES = \
src/test/test-fdset.c
test_fdset_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_fstab_util_SOURCES = \
src/test/test-fstab-util.c
test_fstab_util_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_ratelimit_SOURCES = \
src/test/test-ratelimit.c
test_ratelimit_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_util_SOURCES = \
src/test/test-util.c
test_util_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_hexdecoct_SOURCES = \
src/test/test-hexdecoct.c
test_hexdecoct_LDADD = \
- libbasic.la
+ libsystemd-shared.la
test_alloc_util_SOURCES = \
src/test/test-alloc-util.c
test_alloc_util_LDADD = \
- libbasic.la
+ libsystemd-shared.la
test_xattr_util_SOURCES = \
src/test/test-xattr-util.c
test_xattr_util_LDADD = \
- libbasic.la
+ libsystemd-shared.la
test_io_util_SOURCES = \
src/test/test-io-util.c
test_io_util_LDADD = \
- libbasic.la
+ libsystemd-shared.la
test_glob_util_SOURCES = \
src/test/test-glob-util.c
test_glob_util_LDADD = \
- libbasic.la
+ libsystemd-shared.la
test_fs_util_SOURCES = \
src/test/test-fs-util.c
test_fs_util_LDADD = \
- libbasic.la
+ libsystemd-shared.la
test_proc_cmdline_SOURCES = \
src/test/test-proc-cmdline.c
test_proc_cmdline_LDADD = \
- libbasic.la
+ libsystemd-shared.la
test_fd_util_SOURCES = \
src/test/test-fd-util.c
test_fd_util_LDADD = \
- libbasic.la
+ libsystemd-shared.la
test_web_util_SOURCES = \
src/test/test-web-util.c
test_web_util_LDADD = \
- libbasic.la
+ libsystemd-shared.la
test_cpu_set_util_SOURCES = \
src/test/test-cpu-set-util.c
test_cpu_set_util_LDADD = \
- libbasic.la
+ libsystemd-shared.la
test_stat_util_SOURCES = \
src/test/test-stat-util.c
test_stat_util_LDADD = \
- libbasic.la
+ libsystemd-shared.la
test_escape_SOURCES = \
src/test/test-escape.c
test_escape_LDADD = \
- libbasic.la
+ libsystemd-shared.la
test_string_util_SOURCES = \
src/test/test-string-util.c
test_string_util_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_extract_word_SOURCES = \
src/test/test-extract-word.c
test_extract_word_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_parse_util_SOURCES = \
src/test/test-parse-util.c
test_parse_util_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_user_util_SOURCES = \
src/test/test-user-util.c
test_user_util_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_hostname_util_SOURCES = \
src/test/test-hostname-util.c
test_hostname_util_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_process_util_SOURCES = \
src/test/test-process-util.c
test_process_util_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_terminal_util_SOURCES = \
src/test/test-terminal-util.c
test_terminal_util_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_path_lookup_SOURCES = \
src/test/test-path-lookup.c
test_path_lookup_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_uid_range_SOURCES = \
src/test/test-uid-range.c
test_uid_range_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_cap_list_SOURCES = \
src/test/test-cap-list.c
+test_cap_list_CFLAGS = \
+ $(AM_CFLAGS) \
+ $(CAP_CFLAGS)
+
test_cap_list_LDADD = \
- libshared.la
+ libsystemd-shared.la \
+ $(CAP_LIBS)
test_socket_util_SOURCES = \
src/test/test-socket-util.c
test_socket_util_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_barrier_SOURCES = \
src/test/test-barrier.c
test_barrier_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_tmpfiles_SOURCES = \
src/test/test-tmpfiles.c
test_tmpfiles_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_namespace_SOURCES = \
src/test/test-namespace.c
@@ -1947,19 +1998,19 @@ test_verbs_SOURCES = \
src/test/test-verbs.c
test_verbs_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_install_root_SOURCES = \
src/test/test-install-root.c
test_install_root_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_acl_util_SOURCES = \
src/test/test-acl-util.c
test_acl_util_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_namespace_LDADD = \
libcore.la
@@ -1968,31 +2019,31 @@ test_rlimit_util_SOURCES = \
src/test/test-rlimit-util.c
test_rlimit_util_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_ask_password_api_SOURCES = \
src/test/test-ask-password-api.c
test_ask_password_api_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_signal_util_SOURCES = \
src/test/test-signal-util.c
test_signal_util_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_selinux_SOURCES = \
src/test/test-selinux.c
test_selinux_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_sizeof_SOURCES = \
src/test/test-sizeof.c
test_sizeof_LDADD = \
- libshared.la
+ libsystemd-shared.la
BUILT_SOURCES += \
src/test/test-hashmap-ordered.c
@@ -2014,34 +2065,34 @@ test_hashmap_SOURCES = \
src/test/test-hashmap-plain.c
test_hashmap_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_set_SOURCES = \
src/test/test-set.c
test_set_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_bitmap_SOURCES = \
src/test/test-bitmap.c
test_bitmap_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_xml_SOURCES = \
src/test/test-xml.c
test_xml_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_list_SOURCES = \
src/test/test-list.c
test_list_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_unaligned_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_unaligned_SOURCES = \
src/test/test-unaligned.c
@@ -2069,49 +2120,49 @@ test_prioq_SOURCES = \
src/test/test-prioq.c
test_prioq_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_fileio_SOURCES = \
src/test/test-fileio.c
test_fileio_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_time_SOURCES = \
src/test/test-time.c
test_time_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_clock_SOURCES = \
src/test/test-clock.c
test_clock_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_architecture_SOURCES = \
src/test/test-architecture.c
test_architecture_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_log_SOURCES = \
src/test/test-log.c
test_log_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_ipcrm_SOURCES = \
src/test/test-ipcrm.c
test_ipcrm_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_btrfs_SOURCES = \
src/test/test-btrfs.c
test_btrfs_LDADD = \
- libshared.la
+ libsystemd-shared.la
if HAVE_LIBIPTC
test_firewall_util_SOURCES = \
@@ -2123,7 +2174,7 @@ test_firewall_util_CFLAGS = \
test_firewall_util_LDADD = \
libfirewall.la \
- libshared.la \
+ libsystemd-shared.la \
$(LIBIPTC_LIBS)
endif
@@ -2135,20 +2186,20 @@ test_netlink_manual_CFLAGS = \
$(KMOD_CFLAGS)
test_netlink_manual_LDADD = \
- libshared.la \
+ libsystemd-shared.la \
$(KMOD_LIBS)
test_ellipsize_SOURCES = \
src/test/test-ellipsize.c
test_ellipsize_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_date_SOURCES = \
src/test/test-date.c
test_date_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_sleep_SOURCES = \
src/test/test-sleep.c
@@ -2160,31 +2211,31 @@ test_replace_var_SOURCES = \
src/test/test-replace-var.c
test_replace_var_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_calendarspec_SOURCES = \
src/test/test-calendarspec.c
test_calendarspec_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_strip_tab_ansi_SOURCES = \
src/test/test-strip-tab-ansi.c
test_strip_tab_ansi_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_daemon_SOURCES = \
src/test/test-daemon.c
test_daemon_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_cgroup_SOURCES = \
src/test/test-cgroup.c
test_cgroup_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_cgroup_mask_SOURCES = \
src/test/test-cgroup-mask.c
@@ -2204,31 +2255,31 @@ test_cgroup_util_SOURCES = \
src/test/test-cgroup-util.c
test_cgroup_util_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_env_util_SOURCES = \
src/test/test-env-util.c
test_env_util_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_strbuf_SOURCES = \
src/test/test-strbuf.c
test_strbuf_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_strv_SOURCES = \
src/test/test-strv.c
test_strv_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_path_util_SOURCES = \
src/test/test-path-util.c
test_path_util_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_path_SOURCES = \
src/test/test-path.c
@@ -2254,25 +2305,25 @@ test_siphash24_SOURCES = \
src/test/test-siphash24.c
test_siphash24_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_strxcpyx_SOURCES = \
src/test/test-strxcpyx.c
test_strxcpyx_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_install_SOURCES = \
src/test/test-install.c
test_install_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_watchdog_SOURCES = \
src/test/test-watchdog.c
test_watchdog_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_sched_prio_SOURCES = \
src/test/test-sched-prio.c
@@ -2292,25 +2343,25 @@ test_conf_files_SOURCES = \
src/test/test-conf-files.c
test_conf_files_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_conf_parser_SOURCES = \
src/test/test-conf-parser.c
test_conf_parser_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_af_list_SOURCES = \
src/test/test-af-list.c
test_af_list_LDADD = \
- libbasic.la
+ libsystemd-shared.la
test_arphrd_list_SOURCES = \
src/test/test-arphrd-list.c
test_arphrd_list_LDADD = \
- libbasic.la
+ libsystemd-shared.la
# ------------------------------------------------------------------------------
## .PHONY so it always rebuilds it
@@ -2370,7 +2421,7 @@ systemd_initctl_SOURCES = \
src/initctl/initctl.c
systemd_initctl_LDADD = \
- libshared.la
+ libsystemd-shared.la
# ------------------------------------------------------------------------------
systemd_update_utmp_SOURCES = \
@@ -2381,7 +2432,7 @@ systemd_update_utmp_CFLAGS = \
$(AUDIT_CFLAGS)
systemd_update_utmp_LDADD = \
- libshared.la \
+ libsystemd-shared.la \
$(AUDIT_LIBS)
# ------------------------------------------------------------------------------
@@ -2389,7 +2440,7 @@ systemd_update_done_SOURCES = \
src/update-done/update-done.c
systemd_update_done_LDADD = \
- libshared.la
+ libsystemd-shared.la
# ------------------------------------------------------------------------------
systemd_shutdown_SOURCES = \
@@ -2402,7 +2453,7 @@ systemd_shutdown_SOURCES = \
src/core/killall.c
systemd_shutdown_LDADD = \
- libshared.la
+ libsystemd-shared.la
# ------------------------------------------------------------------------------
if HAVE_KMOD
@@ -2414,7 +2465,7 @@ systemd_modules_load_CFLAGS = \
$(KMOD_CFLAGS)
systemd_modules_load_LDADD = \
- libshared.la \
+ libsystemd-shared.la \
$(KMOD_LIBS)
rootlibexec_PROGRAMS += \
@@ -2444,8 +2495,13 @@ if ENABLE_TMPFILES
systemd_tmpfiles_SOURCES = \
src/tmpfiles/tmpfiles.c
+systemd_tmpfiles_CFLAGS = \
+ $(AM_CFLAGS) \
+ $(ACL_CFLAGS)
+
systemd_tmpfiles_LDADD = \
- libshared.la
+ libsystemd-shared.la \
+ $(ACL_LIBS)
rootbin_PROGRAMS += \
systemd-tmpfiles
@@ -2504,7 +2560,7 @@ systemd_sysusers_SOURCES = \
src/sysusers/sysusers.c
systemd_sysusers_LDADD = \
- libshared.la
+ libsystemd-shared.la
rootbin_PROGRAMS += \
systemd-sysusers
@@ -2550,7 +2606,7 @@ systemd_firstboot_SOURCES = \
src/firstboot/firstboot.c
systemd_firstboot_LDADD = \
- libshared.la \
+ libsystemd-shared.la \
-lcrypt
rootbin_PROGRAMS += \
@@ -2573,7 +2629,7 @@ systemd_machine_id_setup_SOURCES = \
src/core/machine-id-setup.h
systemd_machine_id_setup_LDADD = \
- libshared.la
+ libsystemd-shared.la
SYSINIT_TARGET_WANTS += \
systemd-machine-id-commit.service
@@ -2583,35 +2639,35 @@ systemd_sysctl_SOURCES = \
src/sysctl/sysctl.c
systemd_sysctl_LDADD = \
- libshared.la
+ libsystemd-shared.la
# ------------------------------------------------------------------------------
systemd_sleep_SOURCES = \
src/sleep/sleep.c
systemd_sleep_LDADD = \
- libshared.la
+ libsystemd-shared.la
# ------------------------------------------------------------------------------
systemd_fsck_SOURCES = \
src/fsck/fsck.c
systemd_fsck_LDADD = \
- libshared.la
+ libsystemd-shared.la
# ------------------------------------------------------------------------------
systemd_ac_power_SOURCES = \
src/ac-power/ac-power.c
systemd_ac_power_LDADD = \
- libshared.la
+ libsystemd-shared.la
# ------------------------------------------------------------------------------
systemd_detect_virt_SOURCES = \
src/detect-virt/detect-virt.c
systemd_detect_virt_LDADD = \
- libshared.la
+ libsystemd-shared.la
INSTALL_EXEC_HOOKS += \
systemd-detect-virt-install-hook
@@ -2621,21 +2677,21 @@ systemd_delta_SOURCES = \
src/delta/delta.c
systemd_delta_LDADD = \
- libshared.la
+ libsystemd-shared.la
# ------------------------------------------------------------------------------
systemd_getty_generator_SOURCES = \
src/getty-generator/getty-generator.c
systemd_getty_generator_LDADD = \
- libshared.la
+ libsystemd-shared.la
# ------------------------------------------------------------------------------
systemd_debug_generator_SOURCES = \
src/debug-generator/debug-generator.c
systemd_debug_generator_LDADD = \
- libshared.la
+ libsystemd-shared.la
# ------------------------------------------------------------------------------
systemd_fstab_generator_SOURCES = \
@@ -2643,14 +2699,14 @@ systemd_fstab_generator_SOURCES = \
src/core/mount-setup.c
systemd_fstab_generator_LDADD = \
- libshared.la
+ libsystemd-shared.la
# ------------------------------------------------------------------------------
systemd_system_update_generator_SOURCES = \
src/system-update-generator/system-update-generator.c
systemd_system_update_generator_LDADD = \
- libshared.la
+ libsystemd-shared.la
# ------------------------------------------------------------------------------
if ENABLE_HIBERNATE
@@ -2664,13 +2720,13 @@ systemd_hibernate_resume_SOURCES = \
src/hibernate-resume/hibernate-resume.c
systemd_hibernate_resume_LDADD = \
- libshared.la
+ libsystemd-shared.la
systemd_hibernate_resume_generator_SOURCES = \
src/hibernate-resume/hibernate-resume-generator.c
systemd_hibernate_resume_generator_LDADD = \
- libshared.la
+ libsystemd-shared.la
dist_systemunit_DATA += \
units/hibernate.target \
@@ -2703,7 +2759,7 @@ bootctl_CFLAGS = \
$(BLKID_CFLAGS)
bootctl_LDADD = \
- libshared.la \
+ libsystemd-shared.la \
$(BLKID_LIBS)
bin_PROGRAMS += \
@@ -2894,7 +2950,7 @@ systemd_gpt_auto_generator_SOURCES = \
src/basic/blkid-util.h
systemd_gpt_auto_generator_LDADD = \
- libshared.la \
+ libsystemd-shared.la \
$(BLKID_LIBS)
systemd_gpt_auto_generator_CFLAGS = \
@@ -2918,7 +2974,7 @@ systemd_rc_local_generator_SOURCES = \
src/rc-local-generator/rc-local-generator.c
systemd_rc_local_generator_LDADD = \
- libshared.la
+ libsystemd-shared.la
# ------------------------------------------------------------------------------
systemd_remount_fs_SOURCES = \
@@ -2927,70 +2983,70 @@ systemd_remount_fs_SOURCES = \
src/core/mount-setup.h
systemd_remount_fs_LDADD = \
- libshared.la
+ libsystemd-shared.la
# ------------------------------------------------------------------------------
systemd_cgroups_agent_SOURCES = \
src/cgroups-agent/cgroups-agent.c
systemd_cgroups_agent_LDADD = \
- libshared.la
+ libsystemd-shared.la
# ------------------------------------------------------------------------------
systemd_escape_SOURCES = \
src/escape/escape.c
systemd_escape_LDADD = \
- libshared.la
+ libsystemd-shared.la
# -----------------------------------------------------------------------------
systemctl_SOURCES = \
src/systemctl/systemctl.c
systemctl_LDADD = \
- libshared.la
+ libsystemd-shared.la
# ------------------------------------------------------------------------------
systemd_notify_SOURCES = \
src/notify/notify.c
systemd_notify_LDADD = \
- libshared.la
+ libsystemd-shared.la
# ------------------------------------------------------------------------------
systemd_path_SOURCES = \
src/path/path.c
systemd_path_LDADD = \
- libshared.la
+ libsystemd-shared.la
# ------------------------------------------------------------------------------
systemd_ask_password_SOURCES = \
src/ask-password/ask-password.c
systemd_ask_password_LDADD = \
- libshared.la
+ libsystemd-shared.la
# ------------------------------------------------------------------------------
systemd_reply_password_SOURCES = \
src/reply-password/reply-password.c
systemd_reply_password_LDADD = \
- libshared.la
+ libsystemd-shared.la
# ------------------------------------------------------------------------------
systemd_cgls_SOURCES = \
src/cgls/cgls.c
systemd_cgls_LDADD = \
- libshared.la
+ libsystemd-shared.la
# ------------------------------------------------------------------------------
systemd_cgtop_SOURCES = \
src/cgtop/cgtop.c
systemd_cgtop_LDADD = \
- libshared.la
+ libsystemd-shared.la
# ------------------------------------------------------------------------------
systemd_nspawn_SOURCES = \
@@ -3030,12 +3086,17 @@ gperf_gperf_sources += \
systemd_nspawn_CFLAGS = \
$(AM_CFLAGS) \
+ $(ACL_CFLAGS) \
$(BLKID_CFLAGS) \
- $(SECCOMP_CFLAGS)
+ $(SECCOMP_CFLAGS) \
+ $(SELINUX_CFLAGS)
systemd_nspawn_LDADD = \
- libshared.la \
- $(BLKID_LIBS)
+ libsystemd-shared.la \
+ $(ACL_LIBS) \
+ $(BLKID_LIBS) \
+ $(SECCOMP_LIBS) \
+ $(SELINUX_LIBS)
if HAVE_LIBIPTC
systemd_nspawn_LDADD += \
@@ -3047,8 +3108,13 @@ test_patch_uid_SOURCES = \
src/nspawn/nspawn-patch-uid.h \
src/nspawn/test-patch-uid.c
+test_patch_uid_CFLAGS = \
+ $(AM_CFLAGS) \
+ $(ACL_CFLAGS)
+
test_patch_uid_LDADD = \
- libshared.la
+ libsystemd-shared.la \
+ $(ACL_LIBS)
manual_tests += \
test-patch-uid
@@ -3058,21 +3124,21 @@ systemd_run_SOURCES = \
src/run/run.c
systemd_run_LDADD = \
- libshared.la
+ libsystemd-shared.la
# ------------------------------------------------------------------------------
systemd_stdio_bridge_SOURCES = \
src/stdio-bridge/stdio-bridge.c
systemd_stdio_bridge_LDADD = \
- libshared.la
+ libsystemd-shared.la
# ------------------------------------------------------------------------------
systemd_tty_ask_password_agent_SOURCES = \
src/tty-ask-password-agent/tty-ask-password-agent.c
systemd_tty_ask_password_agent_LDADD = \
- libshared.la
+ libsystemd-shared.la
# ------------------------------------------------------------------------------
libsystemd_internal_la_SOURCES = \
@@ -3166,7 +3232,6 @@ libsystemd_internal_la_SOURCES = \
src/libsystemd/sd-resolve/sd-resolve.c
libsystemd_internal_la_LIBADD = \
- libbasic.la \
-lresolv
noinst_LTLIBRARIES += \
@@ -3177,16 +3242,7 @@ EXTRA_DIST += \
src/libsystemd/sd-bus/DIFFERENCES \
src/libsystemd/sd-bus/GVARIANT-SERIALIZATION
-libsystemd_la_SOURCES = \
- $(libsystemd_internal_la_SOURCES) \
- $(libsystemd_journal_internal_la_SOURCES)
-
-nodist_libsystemd_la_SOURCES = \
- $(nodist_libsystemd_internal_la_SOURCES)
-
-libsystemd_la_CFLAGS = \
- $(libsystemd_internal_la_CFLAGS) \
- $(libsystemd_journal_internal_la_CFLAGS)
+libsystemd_la_SOURCES =
libsystemd_la_LDFLAGS = \
$(AM_LDFLAGS) \
@@ -3194,8 +3250,9 @@ libsystemd_la_LDFLAGS = \
-Wl,--version-script=$(top_srcdir)/src/libsystemd/libsystemd.sym
libsystemd_la_LIBADD = \
- $(libsystemd_internal_la_LIBADD) \
- $(libsystemd_journal_internal_la_LIBADD)
+ libsystemd-internal.la \
+ libbasic.la \
+ libsystemd-journal-internal.la
libsystemd-install-hook:
libname=libsystemd.so && $(move-to-rootlibdir)
@@ -3249,7 +3306,7 @@ test_bus_marshal_SOURCES = \
src/libsystemd/sd-bus/test-bus-marshal.c
test_bus_marshal_LDADD = \
- libshared.la \
+ libsystemd-shared.la \
$(GLIB_LIBS) \
$(DBUS_LIBS)
@@ -3262,13 +3319,13 @@ test_bus_signature_SOURCES = \
src/libsystemd/sd-bus/test-bus-signature.c
test_bus_signature_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_bus_chat_SOURCES = \
src/libsystemd/sd-bus/test-bus-chat.c
test_bus_chat_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_bus_cleanup_SOURCES = \
src/libsystemd/sd-bus/test-bus-cleanup.c
@@ -3278,23 +3335,24 @@ test_bus_cleanup_CFLAGS = \
$(SECCOMP_CFLAGS)
test_bus_cleanup_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_bus_server_SOURCES = \
src/libsystemd/sd-bus/test-bus-server.c
test_bus_server_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_bus_objects_SOURCES = \
src/libsystemd/sd-bus/test-bus-objects.c
test_bus_objects_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_bus_error_SOURCES = \
src/libsystemd/sd-bus/test-bus-error.c
+# Link statically because this test uses BUS_ERROR_MAP_ELF_REGISTER
test_bus_error_LDADD = \
libshared.la
@@ -3302,7 +3360,7 @@ test_bus_gvariant_SOURCES = \
src/libsystemd/sd-bus/test-bus-gvariant.c
test_bus_gvariant_LDADD = \
- libshared.la \
+ libsystemd-shared.la \
$(GLIB_LIBS)
test_bus_gvariant_CFLAGS = \
@@ -3313,67 +3371,67 @@ test_bus_creds_SOURCES = \
src/libsystemd/sd-bus/test-bus-creds.c
test_bus_creds_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_bus_match_SOURCES = \
src/libsystemd/sd-bus/test-bus-match.c
test_bus_match_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_bus_kernel_SOURCES = \
src/libsystemd/sd-bus/test-bus-kernel.c
test_bus_kernel_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_bus_kernel_bloom_SOURCES = \
src/libsystemd/sd-bus/test-bus-kernel-bloom.c
test_bus_kernel_bloom_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_bus_benchmark_SOURCES = \
src/libsystemd/sd-bus/test-bus-benchmark.c
test_bus_benchmark_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_bus_zero_copy_SOURCES = \
src/libsystemd/sd-bus/test-bus-zero-copy.c
test_bus_zero_copy_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_bus_introspect_SOURCES = \
src/libsystemd/sd-bus/test-bus-introspect.c
test_bus_introspect_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_event_SOURCES = \
src/libsystemd/sd-event/test-event.c
test_event_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_netlink_SOURCES = \
src/libsystemd/sd-netlink/test-netlink.c
test_netlink_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_local_addresses_SOURCES = \
src/libsystemd/sd-netlink/test-local-addresses.c
test_local_addresses_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_resolve_SOURCES = \
src/libsystemd/sd-resolve/test-resolve.c
test_resolve_LDADD = \
- libshared.la
+ libsystemd-shared.la
busctl_SOURCES = \
src/libsystemd/sd-bus/busctl.c \
@@ -3381,7 +3439,7 @@ busctl_SOURCES = \
src/libsystemd/sd-bus/busctl-introspect.h
busctl_LDADD = \
- libshared.la
+ libsystemd-shared.la
# ------------------------------------------------------------------------------
noinst_LTLIBRARIES += \
@@ -3449,7 +3507,7 @@ test_dhcp_option_SOURCES = \
test_dhcp_option_LDADD = \
libsystemd-network.la \
- libshared.la
+ libsystemd-shared.la
test_dhcp_client_SOURCES = \
src/systemd/sd-dhcp-client.h \
@@ -3459,14 +3517,14 @@ test_dhcp_client_SOURCES = \
test_dhcp_client_LDADD = \
libsystemd-network.la \
- libshared.la
+ libsystemd-shared.la
test_dhcp_server_SOURCES = \
src/libsystemd-network/test-dhcp-server.c
test_dhcp_server_LDADD = \
libsystemd-network.la \
- libshared.la
+ libsystemd-shared.la
test_ipv4ll_SOURCES = \
src/systemd/sd-ipv4ll.h \
@@ -3475,7 +3533,7 @@ test_ipv4ll_SOURCES = \
test_ipv4ll_LDADD = \
libsystemd-network.la \
- libshared.la
+ libsystemd-shared.la
test_ipv4ll_manual_SOURCES = \
src/systemd/sd-ipv4ll.h \
@@ -3483,7 +3541,7 @@ test_ipv4ll_manual_SOURCES = \
test_ipv4ll_manual_LDADD = \
libsystemd-network.la \
- libshared.la
+ libsystemd-shared.la
test_acd_SOURCES = \
src/systemd/sd-ipv4acd.h \
@@ -3491,7 +3549,7 @@ test_acd_SOURCES = \
test_acd_LDADD = \
libsystemd-network.la \
- libshared.la
+ libsystemd-shared.la
test_ndisc_rs_SOURCES = \
src/systemd/sd-dhcp6-client.h \
@@ -3504,7 +3562,7 @@ test_ndisc_rs_SOURCES = \
test_ndisc_rs_LDADD = \
libsystemd-network.la \
libudev.la \
- libshared.la
+ libsystemd-shared.la
test_dhcp6_client_SOURCES = \
src/systemd/sd-dhcp6-client.h \
@@ -3516,14 +3574,14 @@ test_dhcp6_client_SOURCES = \
test_dhcp6_client_LDADD = \
libsystemd-network.la \
libudev.la \
- libshared.la
+ libsystemd-shared.la
test_lldp_SOURCES = \
src/libsystemd-network/test-lldp.c
test_lldp_LDADD = \
libsystemd-network.la \
- libshared.la
+ libsystemd-shared.la
tests += \
test-dhcp-option \
@@ -3561,7 +3619,8 @@ libudev_la_LDFLAGS = \
-Wl,--version-script=$(top_srcdir)/src/libudev/libudev.sym
libudev_la_LIBADD = \
- libsystemd-internal.la
+ libsystemd-internal.la \
+ libbasic.la
pkgconfiglib_DATA += \
src/libudev/libudev.pc
@@ -3725,7 +3784,8 @@ systemd_udevd_SOURCES = \
src/udev/udevd.c
systemd_udevd_LDADD = \
- libudev-core.la
+ libudev-core.la \
+ libbasic.la
udevadm_SOURCES = \
src/udev/udevadm.c \
@@ -3741,7 +3801,8 @@ udevadm_SOURCES = \
src/udev/udevadm-util.h
udevadm_LDADD = \
- libudev-core.la
+ libudev-core.la \
+ libbasic.la
# ------------------------------------------------------------------------------
if ENABLE_HWDB
@@ -3820,15 +3881,17 @@ test_libudev_SOURCES = \
src/test/test-libudev.c
test_libudev_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_udev_SOURCES = \
src/test/test-udev.c
test_udev_LDADD = \
libudev-core.la \
+ libsystemd-shared.la \
$(BLKID_LIBS) \
- $(KMOD_LIBS)
+ $(KMOD_LIBS) \
+ -lrt
if ENABLE_TESTS
check_DATA += \
@@ -3932,7 +3995,7 @@ test_id128_SOURCES = \
src/test/test-id128.c
test_id128_LDADD = \
- libshared.la
+ libsystemd-shared.la
tests += \
test-id128
@@ -3946,7 +4009,7 @@ systemd_socket_activate_SOURCES = \
src/activate/activate.c
systemd_socket_activate_LDADD = \
- libshared.la
+ libsystemd-shared.la
# ------------------------------------------------------------------------------
systemd_journald_SOURCES = \
@@ -3955,7 +4018,7 @@ systemd_journald_SOURCES = \
systemd_journald_LDADD = \
libjournal-core.la \
- libshared.la
+ libsystemd-shared.la
systemd_cat_SOURCES = \
src/journal/cat.c
@@ -3977,7 +4040,7 @@ systemd_journal_upload_CFLAGS = \
$(LIBCURL_CFLAGS)
systemd_journal_upload_LDADD = \
- libshared.la \
+ libsystemd-shared.la \
$(LIBCURL_LIBS)
nodist_systemunit_DATA += \
@@ -4058,7 +4121,7 @@ journalctl_SOURCES = \
src/journal/journalctl.c
journalctl_LDADD = \
- libshared.la \
+ libsystemd-shared.la \
libudev-core.la
if HAVE_QRENCODE
@@ -4153,13 +4216,18 @@ test_compress_SOURCES = \
src/journal/test-compress.c
test_compress_LDADD = \
- libshared.la
+ libsystemd-shared.la
+
+if HAVE_LZ4
+test_compress_LDADD += \
+ -llz4
+endif
test_compress_benchmark_SOURCES = \
src/journal/test-compress-benchmark.c
test_compress_benchmark_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_audit_type_SOURCES = \
src/journal/test-audit-type.c
@@ -4192,7 +4260,7 @@ nodist_libjournal_core_la_SOURCES = \
src/journal/journald-gperf.c
libjournal_core_la_LIBADD = \
- libshared.la
+ libsystemd-shared.la
noinst_LTLIBRARIES += \
libjournal-core.la
@@ -4397,7 +4465,7 @@ systemd_journal_gatewayd_SOURCES = \
src/journal-remote/microhttpd-util.c
systemd_journal_gatewayd_LDADD = \
- libshared.la \
+ libsystemd-shared.la \
$(MICROHTTPD_LIBS)
if HAVE_GNUTLS
@@ -4433,7 +4501,7 @@ systemd_socket_proxyd_SOURCES = \
src/socket-proxy/socket-proxyd.c
systemd_socket_proxyd_LDADD = \
- libshared.la
+ libsystemd-shared.la
# ------------------------------------------------------------------------------
if ENABLE_COREDUMP
@@ -4442,8 +4510,13 @@ systemd_coredump_SOURCES = \
src/coredump/coredump-vacuum.c \
src/coredump/coredump-vacuum.h
+systemd_coredump_CFLAGS = \
+ $(AM_CFLAGS) \
+ $(ACL_CFLAGS)
+
systemd_coredump_LDADD = \
- libshared.la
+ libsystemd-shared.la \
+ $(ACL_LIBS)
if HAVE_ELFUTILS
systemd_coredump_SOURCES += \
@@ -4473,7 +4546,7 @@ coredumpctl_SOURCES = \
src/coredump/coredumpctl.c
coredumpctl_LDADD = \
- libshared.la
+ libsystemd-shared.la
bin_PROGRAMS += \
coredumpctl
@@ -4487,7 +4560,7 @@ test_coredump_vacuum_SOURCES = \
src/coredump/coredump-vacuum.h
test_coredump_vacuum_LDADD = \
- libshared.la
+ libsystemd-shared.la
dist_bashcompletion_data += \
shell-completion/bash/coredumpctl
@@ -4512,7 +4585,7 @@ systemd_binfmt_SOURCES = \
src/binfmt/binfmt.c
systemd_binfmt_LDADD = \
- libshared.la
+ libsystemd-shared.la
rootlibexec_PROGRAMS += \
systemd-binfmt
@@ -4543,7 +4616,7 @@ systemd_vconsole_setup_SOURCES = \
src/vconsole/vconsole-setup.c
systemd_vconsole_setup_LDADD = \
- libshared.la
+ libsystemd-shared.la
rootlibexec_PROGRAMS += \
systemd-vconsole-setup
@@ -4574,7 +4647,7 @@ systemd_quotacheck_SOURCES = \
src/quotacheck/quotacheck.c
systemd_quotacheck_LDADD = \
- libshared.la
+ libsystemd-shared.la
endif
EXTRA_DIST += \
@@ -4595,7 +4668,7 @@ systemd_random_seed_SOURCES = \
src/random-seed/random-seed.c
systemd_random_seed_LDADD = \
- libshared.la
+ libsystemd-shared.la
SYSINIT_TARGET_WANTS += \
systemd-random-seed.service
@@ -4617,7 +4690,7 @@ systemd_backlight_SOURCES = \
src/backlight/backlight.c
systemd_backlight_LDADD = \
- libshared.la
+ libsystemd-shared.la
endif
EXTRA_DIST += \
@@ -4638,7 +4711,7 @@ systemd_rfkill_SOURCES = \
src/rfkill/rfkill.c
systemd_rfkill_LDADD = \
- libshared.la
+ libsystemd-shared.la
endif
EXTRA_DIST += \
@@ -4664,14 +4737,14 @@ systemd_cryptsetup_CFLAGS = \
$(LIBCRYPTSETUP_CFLAGS)
systemd_cryptsetup_LDADD = \
- libshared.la \
+ libsystemd-shared.la \
$(LIBCRYPTSETUP_LIBS)
systemd_cryptsetup_generator_SOURCES = \
src/cryptsetup/cryptsetup-generator.c
systemd_cryptsetup_generator_LDADD = \
- libshared.la
+ libsystemd-shared.la
SYSINIT_TARGET_WANTS += \
cryptsetup.target
@@ -4684,7 +4757,7 @@ systemd_hostnamed_SOURCES = \
src/hostname/hostnamed.c
systemd_hostnamed_LDADD = \
- libshared.la
+ libsystemd-shared.la
rootlibexec_PROGRAMS += \
systemd-hostnamed
@@ -4714,7 +4787,7 @@ hostnamectl_SOURCES = \
src/hostname/hostnamectl.c
hostnamectl_LDADD = \
- libshared.la
+ libsystemd-shared.la
bin_PROGRAMS += \
hostnamectl
@@ -4747,7 +4820,7 @@ systemd_localed_SOURCES = \
src/locale/keymap-util.h
systemd_localed_LDADD = \
- libshared.la \
+ libsystemd-shared.la \
-ldl
systemd_localed_CFLAGS = \
@@ -4798,7 +4871,7 @@ localectl_SOURCES = \
src/locale/localectl.c
localectl_LDADD = \
- libshared.la
+ libsystemd-shared.la
bin_PROGRAMS += \
localectl
@@ -4824,7 +4897,7 @@ systemd_timedated_SOURCES = \
src/timedate/timedated.c
systemd_timedated_LDADD = \
- libshared.la
+ libsystemd-shared.la
rootlibexec_PROGRAMS += \
systemd-timedated
@@ -4854,7 +4927,7 @@ timedatectl_SOURCES = \
src/timedate/timedatectl.c
timedatectl_LDADD = \
- libshared.la
+ libsystemd-shared.la
bin_PROGRAMS += \
timedatectl
@@ -4888,7 +4961,8 @@ nodist_systemd_timesyncd_SOURCES = \
systemd_timesyncd_LDADD = \
libsystemd-network.la \
- libshared.la
+ libsystemd-shared.la \
+ -lm
rootlibexec_PROGRAMS += \
systemd-timesyncd
@@ -4917,6 +4991,7 @@ test_nss_SOURCES = \
test_nss_LDADD = \
libsystemd-internal.la \
+ libbasic.la \
-ldl
manual_tests += \
@@ -4938,7 +5013,8 @@ libnss_myhostname_la_LDFLAGS = \
-Wl,--version-script=$(top_srcdir)/src/nss-myhostname/nss-myhostname.sym
libnss_myhostname_la_LIBADD = \
- libsystemd-internal.la
+ libsystemd-internal.la \
+ libbasic.la
lib_LTLIBRARIES += \
libnss_myhostname.la
@@ -4968,7 +5044,7 @@ libmachine_core_la_SOURCES = \
src/machine/operation.h
libmachine_core_la_LIBADD = \
- libshared.la
+ libsystemd-shared.la
noinst_LTLIBRARIES += \
libmachine-core.la
@@ -4977,7 +5053,7 @@ machinectl_SOURCES = \
src/machine/machinectl.c
machinectl_LDADD = \
- libshared.la
+ libsystemd-shared.la
rootbin_PROGRAMS += \
machinectl
@@ -5036,7 +5112,8 @@ libnss_mymachines_la_LDFLAGS = \
-Wl,--version-script=$(top_srcdir)/src/nss-mymachines/nss-mymachines.sym
libnss_mymachines_la_LIBADD = \
- libsystemd-internal.la
+ libsystemd-internal.la \
+ libbasic.la
lib_LTLIBRARIES += \
libnss_mymachines.la
@@ -5074,7 +5151,7 @@ systemd_importd_CFLAGS = \
-D SYSTEMD_EXPORT_PATH=\"$(rootlibexecdir)/systemd-export\"
systemd_importd_LDADD = \
- libshared.la
+ libsystemd-shared.la
systemd_pull_SOURCES = \
src/import/pull.c \
@@ -5105,7 +5182,7 @@ systemd_pull_CFLAGS = \
-D USER_KEYRING_PATH=\"$(pkgsysconfdir)/import-pubring.gpg\"
systemd_pull_LDADD = \
- libshared.la \
+ libsystemd-shared.la \
$(LIBCURL_LIBS) \
$(XZ_LIBS) \
$(ZLIB_LIBS) \
@@ -5131,7 +5208,7 @@ systemd_import_CFLAGS = \
$(ZLIB_CFLAGS)
systemd_import_LDADD = \
- libshared.la \
+ libsystemd-shared.la \
$(XZ_LIBS) \
$(ZLIB_LIBS) \
-lbz2
@@ -5153,7 +5230,7 @@ systemd_export_CFLAGS = \
$(ZLIB_CFLAGS)
systemd_export_LDADD = \
- libshared.la \
+ libsystemd-shared.la \
$(XZ_LIBS) \
$(ZLIB_LIBS) \
-lbz2
@@ -5195,7 +5272,7 @@ test_qcow2_CFLAGS = \
$(ZLIB_CFLAGS)
test_qcow2_LDADD = \
- libshared.la \
+ libsystemd-shared.la \
$(ZLIB_LIBS)
endif
@@ -5282,9 +5359,15 @@ nodist_systemd_resolved_SOURCES = \
src/resolve/dns_type-to-name.h \
src/resolve/resolved-gperf.c
+systemd_resolved_CFLAGS = \
+ $(AM_CFLAGS) \
+ $(GCRYPT_CFLAGS)
+
systemd_resolved_LDADD = \
libsystemd-network.la \
- libshared.la
+ libsystemd-shared.la \
+ $(GCRYPT_LIBS) \
+ -lm
rootlibexec_PROGRAMS += \
systemd-resolved
@@ -5328,6 +5411,7 @@ libnss_resolve_la_LDFLAGS = \
libnss_resolve_la_LIBADD = \
libsystemd-internal.la \
+ libbasic.la \
-ldl
lib_LTLIBRARIES += \
@@ -5343,8 +5427,14 @@ nodist_systemd_resolve_SOURCES = \
src/resolve/dns_type-from-name.h \
src/resolve/dns_type-to-name.h
+systemd_resolve_CFLAGS = \
+ $(AM_CFLAGS) \
+ $(GCRYPT_CFLAGS)
+
systemd_resolve_LDADD = \
- libshared.la
+ libsystemd-shared.la \
+ $(GCRYPT_LIBS) \
+ -lm
bin_PROGRAMS += \
systemd-resolve
@@ -5370,8 +5460,14 @@ test_resolve_tables_SOURCES = \
$(basic_dns_sources) \
src/shared/test-tables.h
+test_resolve_tables_CFLAGS = \
+ $(AM_CFLAGS) \
+ $(GCRYPT_CFLAGS)
+
test_resolve_tables_LDADD = \
- libshared.la
+ libsystemd-shared.la \
+ $(GCRYPT_LIBS) \
+ -lm
test_dns_packet_SOURCES = \
src/resolve/test-dns-packet.c \
@@ -5381,8 +5477,14 @@ test_dns_packet_CPPFLAGS = \
$(AM_CPPFLAGS) \
-DRESOLVE_TEST_DIR=\"$(abs_top_srcdir)/src/resolve/test-data\"
+test_dns_packet_CFLAGS = \
+ $(AM_CFLAGS) \
+ $(GCRYPT_CFLAGS)
+
test_dns_packet_LDADD = \
- libshared.la
+ libsystemd-shared.la \
+ $(GCRYPT_LIBS) \
+ -lm
EXTRA_DIST += \
src/resolve/test-data/_openpgpkey.fedoraproject.org.pkts \
@@ -5401,8 +5503,14 @@ test_dnssec_SOURCES = \
src/resolve/test-dnssec.c \
$(basic_dns_sources)
+test_dnssec_CFLAGS = \
+ $(AM_CFLAGS) \
+ $(GCRYPT_CFLAGS)
+
test_dnssec_LDADD = \
- libshared.la
+ libsystemd-shared.la \
+ $(GCRYPT_LIBS) \
+ -lm
test_dnssec_complex_SOURCES = \
src/resolve/test-dnssec-complex.c \
@@ -5410,7 +5518,7 @@ test_dnssec_complex_SOURCES = \
src/resolve/dns-type.h
test_dnssec_complex_LDADD = \
- libshared.la
+ libsystemd-shared.la
endif
@@ -5513,7 +5621,7 @@ nodist_libnetworkd_core_la_SOURCES = \
libnetworkd_core_la_LIBADD = \
libsystemd-network.la \
- libshared.la
+ libsystemd-shared.la
rootlibexec_PROGRAMS += \
systemd-networkd-wait-online
@@ -5531,7 +5639,7 @@ systemd_networkd_wait_online_SOURCES = \
systemd_networkd_wait_online_LDADD = \
libsystemd-network.la \
- libshared.la
+ libsystemd-shared.la
rootbin_PROGRAMS += \
networkctl
@@ -5540,7 +5648,7 @@ networkctl_SOURCES = \
src/network/networkctl.c
networkctl_LDADD = \
- libshared.la \
+ libsystemd-shared.la \
libsystemd-network.la
dist_bashcompletion_data += \
@@ -5658,7 +5766,7 @@ liblogind_core_la_SOURCES = \
src/login/logind-acl.h
liblogind_core_la_LIBADD = \
- libshared.la
+ libsystemd-shared.la
if HAVE_ACL
liblogind_core_la_SOURCES += \
@@ -5677,7 +5785,7 @@ loginctl_SOURCES = \
src/login/sysfs-show.c
loginctl_LDADD = \
- libshared.la
+ libsystemd-shared.la
rootbin_PROGRAMS += \
loginctl
@@ -5693,7 +5801,7 @@ systemd_inhibit_SOURCES = \
src/login/inhibit.c
systemd_inhibit_LDADD = \
- libshared.la
+ libsystemd-shared.la
rootbin_PROGRAMS += \
systemd-inhibit
@@ -5702,19 +5810,19 @@ test_login_SOURCES = \
src/libsystemd/sd-login/test-login.c
test_login_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_login_shared_SOURCES = \
src/login/test-login-shared.c
test_login_shared_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_inhibit_SOURCES = \
src/login/test-inhibit.c
test_inhibit_LDADD = \
- libshared.la
+ libsystemd-shared.la
test_login_tables_SOURCES = \
src/login/test-login-tables.c
@@ -5823,7 +5931,7 @@ systemd_user_sessions_SOURCES = \
src/user-sessions/user-sessions.c
systemd_user_sessions_LDADD = \
- libshared.la
+ libsystemd-shared.la
rootlibexec_PROGRAMS += \
systemd-user-sessions
diff --git a/man/systemd.service.xml b/man/systemd.service.xml
index 6e969abc25..70f12b2d32 100644
--- a/man/systemd.service.xml
+++ b/man/systemd.service.xml
@@ -202,8 +202,9 @@
notification message has been sent. If this option is used,
<varname>NotifyAccess=</varname> (see below) should be set to
open access to the notification socket provided by systemd. If
- <varname>NotifyAccess=</varname> is not set, it will be
- implicitly set to <option>main</option>. Note that currently
+ <varname>NotifyAccess=</varname> is missing or set to
+ <option>none</option>, it will be forcibly set to
+ <option>main</option>. Note that currently
<varname>Type=</varname><option>notify</option> will not work
if used in combination with
<varname>PrivateNetwork=</varname><option>yes</option>.</para>
diff --git a/po/LINGUAS b/po/LINGUAS
index 8fee627265..2f1ba199ac 100644
--- a/po/LINGUAS
+++ b/po/LINGUAS
@@ -9,6 +9,7 @@ fr
gl
hr
hu
+id
it
ko
pl
diff --git a/po/id.po b/po/id.po
new file mode 100755
index 0000000000..72eb94c7ec
--- /dev/null
+++ b/po/id.po
@@ -0,0 +1,576 @@
+# Indonesian translation for systemd.
+# Copyright (C) 2014 systemd's COPYRIGHT HOLDER
+# This file is distributed under the same license as the systemd package.
+# Andika Triwidada <andika@gmail.com>, 2014.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: systemd master\n"
+"Report-Msgid-Bugs-To: https://github.com/systemd/systemd/issues\n"
+"POT-Creation-Date: 2016-04-23 02:33+0000\n"
+"PO-Revision-Date: 2016-06-28 13:18+0700\n"
+"Last-Translator: Andika Triwidada <andika@gmail.com>\n"
+"Language-Team: Indonesian <gnome-l10n-id@googlegroups.com>\n"
+"Language: id\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 1.8.8\n"
+
+#: ../src/core/org.freedesktop.systemd1.policy.in.in.h:1
+msgid "Send passphrase back to system"
+msgstr "Kirim frasa sandi kembali ke sistem"
+
+#: ../src/core/org.freedesktop.systemd1.policy.in.in.h:2
+msgid ""
+"Authentication is required to send the entered passphrase back to the system."
+msgstr ""
+"Otentikasi diperlukan untuk mengirim frasa sandi yang dimasukkan kembali ke "
+"sistem."
+
+#: ../src/core/org.freedesktop.systemd1.policy.in.in.h:3
+msgid "Manage system services or other units"
+msgstr "Kelola layanan sistem atau unit lainnya"
+
+#: ../src/core/org.freedesktop.systemd1.policy.in.in.h:4
+msgid "Authentication is required to manage system services or other units."
+msgstr ""
+"Otentikasi diperlukan untuk mengelola layanan sistem atau unit lainnya."
+
+#: ../src/core/org.freedesktop.systemd1.policy.in.in.h:5
+msgid "Manage system service or unit files"
+msgstr "Kelola layanan sistem atau berkas unit"
+
+#: ../src/core/org.freedesktop.systemd1.policy.in.in.h:6
+msgid "Authentication is required to manage system service or unit files."
+msgstr "Otentikasi diperlukan untuk mengelola layanan sistem atau berkas unit."
+
+#: ../src/core/org.freedesktop.systemd1.policy.in.in.h:7
+msgid "Set or unset system and service manager environment variables"
+msgstr "Atur atau hapus variabel lingkungan manajer layanan dan sistem"
+
+#: ../src/core/org.freedesktop.systemd1.policy.in.in.h:8
+msgid ""
+"Authentication is required to set or unset system and service manager "
+"environment variables."
+msgstr ""
+"Otentikasi diperlukan untuk menata atau menghapus variabel lingkungan "
+"manajer layanan dan sistem."
+
+#: ../src/core/org.freedesktop.systemd1.policy.in.in.h:9
+msgid "Reload the systemd state"
+msgstr "Muat ulang keadaan systemd"
+
+#: ../src/core/org.freedesktop.systemd1.policy.in.in.h:10
+msgid "Authentication is required to reload the systemd state."
+msgstr "Otentikasi diperlukan untuk memuat ulang keadaan systemd."
+
+#: ../src/hostname/org.freedesktop.hostname1.policy.in.h:1
+msgid "Set host name"
+msgstr "Setel nama host"
+
+#: ../src/hostname/org.freedesktop.hostname1.policy.in.h:2
+msgid "Authentication is required to set the local host name."
+msgstr "Otentikasi diperlukan untuk menata nama host lokal."
+
+#: ../src/hostname/org.freedesktop.hostname1.policy.in.h:3
+msgid "Set static host name"
+msgstr "Setel nama host statik"
+
+#: ../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 ""
+"Otentikasi diperlukan untuk menata nama host lokal yang dikonfigurasi "
+"statik, maupun nama host cantik."
+
+#: ../src/hostname/org.freedesktop.hostname1.policy.in.h:5
+msgid "Set machine information"
+msgstr "Setel informasi mesin"
+
+#: ../src/hostname/org.freedesktop.hostname1.policy.in.h:6
+msgid "Authentication is required to set local machine information."
+msgstr "Otentikasi diperlukan untuk menata informasi mesin lokal."
+
+#: ../src/import/org.freedesktop.import1.policy.in.h:1
+msgid "Import a VM or container image"
+msgstr "Impor sebuah image kontainer atau VM"
+
+#: ../src/import/org.freedesktop.import1.policy.in.h:2
+msgid "Authentication is required to import a VM or container image"
+msgstr "Otentikasi diperlukan untuk mengimpor suatu image kontainer atau VM"
+
+#: ../src/import/org.freedesktop.import1.policy.in.h:3
+msgid "Export a VM or container image"
+msgstr "Ekspor sebuah image kontainer atau VM"
+
+#: ../src/import/org.freedesktop.import1.policy.in.h:4
+msgid "Authentication is required to export a VM or container image"
+msgstr "Otentikasi diperlukan untuk mengekspor suatu image kontainer atau VM"
+
+#: ../src/import/org.freedesktop.import1.policy.in.h:5
+msgid "Download a VM or container image"
+msgstr "Unduh sebuah image kontainer atau VM"
+
+#: ../src/import/org.freedesktop.import1.policy.in.h:6
+msgid "Authentication is required to download a VM or container image"
+msgstr "Otentikasi diperlukan untuk mengunduh suatu image kontainer atau VM"
+
+#: ../src/locale/org.freedesktop.locale1.policy.in.h:1
+msgid "Set system locale"
+msgstr "Setel locale sistem"
+
+#: ../src/locale/org.freedesktop.locale1.policy.in.h:2
+msgid "Authentication is required to set the system locale."
+msgstr "Otentikasi diperlukan untuk menyetel locale sistem."
+
+#: ../src/locale/org.freedesktop.locale1.policy.in.h:3
+msgid "Set system keyboard settings"
+msgstr "Setel pengaturan papan tik sistem"
+
+#: ../src/locale/org.freedesktop.locale1.policy.in.h:4
+msgid "Authentication is required to set the system keyboard settings."
+msgstr "Otentikasi diperlukan untuk menyetel pengaturan papan tik sistem."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:1
+msgid "Allow applications to inhibit system shutdown"
+msgstr "Ijinkan aplikasi untuk mencegah shutdown sistem"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:2
+msgid ""
+"Authentication is required for an application to inhibit system shutdown."
+msgstr ""
+"Otentikasi diperlukan bagi suatu aplikasi untuk mencegah shutdown sistem."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:3
+msgid "Allow applications to delay system shutdown"
+msgstr "Ijinkan aplikasi untuk menunda shutdown sistem"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:4
+msgid "Authentication is required for an application to delay system shutdown."
+msgstr ""
+"Otentikasi diperlukan bagi suatu aplikasi untuk menunda shutdown sistem."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:5
+msgid "Allow applications to inhibit system sleep"
+msgstr "Ijinkan aplikasi untuk mencegah tidur sistem"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:6
+msgid "Authentication is required for an application to inhibit system sleep."
+msgstr "Otentikasi diperlukan bagi suatu aplikasi untuk menunda tidur sistem."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:7
+msgid "Allow applications to delay system sleep"
+msgstr "Ijinkan aplikasi untuk menunda tidur sistem"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:8
+msgid "Authentication is required for an application to delay system sleep."
+msgstr "Otentikasi diperlukan bagi suatu aplikasi untuk menunda tidur sistem."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:9
+msgid "Allow applications to inhibit automatic system suspend"
+msgstr "Ijinkan aplikasi mencegah suspensi sistem otomatis"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:10
+msgid ""
+"Authentication is required for an application to inhibit automatic system "
+"suspend."
+msgstr ""
+"Otentikasi diperlukan bagi suatu aplikasi untuk mencegah suspensi sistem."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:11
+msgid "Allow applications to inhibit system handling of the power key"
+msgstr "Ijinkan aplikasi mencegah penanganan sistem atas tombol daya"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:12
+msgid ""
+"Authentication is required for an application to inhibit system handling of "
+"the power key."
+msgstr ""
+"Otentikasi diperlukan bagi suatu aplikasi untuk mencegah penanganan sistem "
+"atas tombol daya."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:13
+msgid "Allow applications to inhibit system handling of the suspend key"
+msgstr "Ijinkan aplikasi mencegah penanganan sistem atas tombol suspensi"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:14
+msgid ""
+"Authentication is required for an application to inhibit system handling of "
+"the suspend key."
+msgstr ""
+"Otentikasi diperlukan bagi suatu aplikasi untuk mencegah penanganan sistem "
+"atas tombol suspensi."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:15
+msgid "Allow applications to inhibit system handling of the hibernate key"
+msgstr "Ijinkan aplikasi mencegah penanganan sistem atas tombol hibernasi"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:16
+msgid ""
+"Authentication is required for an application to inhibit system handling of "
+"the hibernate key."
+msgstr ""
+"Otentikasi diperlukan bagi suatu aplikasi untuk mencegah penanganan sistem "
+"dari tombol hibernasi."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:17
+msgid "Allow applications to inhibit system handling of the lid switch"
+msgstr "Ijinkan aplikasi mencegah penanganan sistem atas saklar lid"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:18
+msgid ""
+"Authentication is required for an application to inhibit system handling of "
+"the lid switch."
+msgstr ""
+"Otentikasi diperlukan bagi suatu aplikasi untuk mencegah penanganan sistem "
+"atas saklar lid."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:19
+msgid "Allow non-logged-in user to run programs"
+msgstr "Ijinkan pengguna yang tidak log masuk menjalankan program"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:20
+msgid "Explicit request is required to run programs as a non-logged-in user."
+msgstr ""
+"Permintaan eksplisit diperlukan untuk menjalankan program sebagai pengguna "
+"yang tidak log masuk."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:21
+msgid "Allow non-logged-in users to run programs"
+msgstr "Ijinkan pengguna yang tidak log masuk menjalankan program"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:22
+msgid "Authentication is required to run programs as a non-logged-in user."
+msgstr ""
+"Otentikasi diperlukan untuk menjalankan program sebagai pengguna yang tidak "
+"log masuk."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:23
+msgid "Allow attaching devices to seats"
+msgstr "Ijinkan mencantolkan perangkat ke seat"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:24
+msgid "Authentication is required for attaching a device to a seat."
+msgstr "Otentikasi diperlukan untuk mencantol suatu perangkat ke sebuah seat."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:25
+msgid "Flush device to seat attachments"
+msgstr "Siram perangkat untuk mendudukkan lampiran"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:26
+msgid ""
+"Authentication is required for resetting how devices are attached to seats."
+msgstr ""
+"Otentikasi diperlukan untuk me-reset bagaimana perangkat dicantolkan ke seat."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:27
+msgid "Power off the system"
+msgstr "Matikan daya sistem"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:28
+msgid "Authentication is required for powering off the system."
+msgstr "Otentikasi diperlukan untuk mematikan daya sistem."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:29
+msgid "Power off the system while other users are logged in"
+msgstr "Matikan daya sistem ketika pengguna lain sedang log masuk"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:30
+msgid ""
+"Authentication is required for powering off the system while other users are "
+"logged in."
+msgstr ""
+"Otentikasi diperlukan untuk mematikan daya sistem ketika pengguna lain "
+"sedang log masuk."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:31
+msgid "Power off the system while an application asked to inhibit it"
+msgstr "Matikan daya sistem ketika sebuah aplikasi meminta untuk mencegahnya"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:32
+msgid ""
+"Authentication is required for powering off the system while an application "
+"asked to inhibit it."
+msgstr ""
+"Otentikasi diperlukan untuk mematikan daya sistem ketika sebuah aplikasi "
+"meminta untuk mencegahnya."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:33
+msgid "Reboot the system"
+msgstr "Boot ulang sistem"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:34
+msgid "Authentication is required for rebooting the system."
+msgstr "Otentikasi diperlukan untuk mem-boot ulang sistem."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:35
+msgid "Reboot the system while other users are logged in"
+msgstr "Boot ulang sistem ketika pengguna lain sedang log masuk"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:36
+msgid ""
+"Authentication is required for rebooting the system while other users are "
+"logged in."
+msgstr ""
+"Otentikasi diperlukan untuk mem-boot ulang sistem ketika pengguna lain "
+"sedang log masuk."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:37
+msgid "Reboot the system while an application asked to inhibit it"
+msgstr "Boot ulang sistem ketika sebuah aplikasi meminta untuk mencegahnya"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:38
+msgid ""
+"Authentication is required for rebooting the system while an application "
+"asked to inhibit it."
+msgstr ""
+"Otentikasi diperlukan untuk mem-boot ulang sistem ketika sebuah aplikasi "
+"meminta untuk mencegahnya."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:39
+msgid "Suspend the system"
+msgstr "Suspensikan sistem"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:40
+msgid "Authentication is required for suspending the system."
+msgstr "Otentikasi diperlukan untuk mensuspensi sistem."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:41
+msgid "Suspend the system while other users are logged in"
+msgstr "Suspensikan sistem ketika pengguna lain sedang log masuk"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:42
+msgid ""
+"Authentication is required for suspending the system while other users are "
+"logged in."
+msgstr ""
+"Otentikasi diperlukan untuk mensuspensi sistem ketika pengguna lain sedang "
+"log masuk."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:43
+msgid "Suspend the system while an application asked to inhibit it"
+msgstr "Suspensikan sistem ketika sebuah aplikasi meminta untuk mencegahnya"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:44
+msgid ""
+"Authentication is required for suspending the system while an application "
+"asked to inhibit it."
+msgstr ""
+"Otentikasi diperlukan untuk mensuspensi sistem ketika suatu aplikasi meminta "
+"untuk mencegahnya."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:45
+msgid "Hibernate the system"
+msgstr "Hibernasikan sistem"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:46
+msgid "Authentication is required for hibernating the system."
+msgstr "Otentikasi diperlukan untuk menghibernasi sistem."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:47
+msgid "Hibernate the system while other users are logged in"
+msgstr "Hibernasikan sistem ketika pengguna lain sedang log masuk."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:48
+msgid ""
+"Authentication is required for hibernating the system while other users are "
+"logged in."
+msgstr ""
+"Otentikasi diperlukan untuk menghibernasi sistem ketika pengguna lain sedang "
+"log masuk."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:49
+msgid "Hibernate the system while an application asked to inhibit it"
+msgstr "Hibernasikan sistem ketika sebuah aplikasi meminta untuk mencegahnya."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:50
+msgid ""
+"Authentication is required for hibernating the system while an application "
+"asked to inhibit it."
+msgstr ""
+"Otentikasi diperlukan untuk menghibernasi sistem ketika sebuah aplikasi "
+"meminta mencegahnya."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:51
+msgid "Manage active sessions, users and seats"
+msgstr "Kelola seat, pengguna, dan sesi aktif"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:52
+msgid ""
+"Authentication is required for managing active sessions, users and seats."
+msgstr "Otentikasi diperlukan untuk mengelola seat, pengguna, dan sesi aktif."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:53
+msgid "Lock or unlock active sessions"
+msgstr "Kunci/buka kunci sesi aktif"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:54
+msgid "Authentication is required to lock or unlock active sessions."
+msgstr "Otentikasi diperlukan untuk mengunci atau membuka kunci sesi aktif."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:55
+msgid "Allow indication to the firmware to boot to setup interface"
+msgstr "Ijinkan indikasi ke firmware untuk boot ke antar muka penyiapan"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:56
+msgid ""
+"Authentication is required to indicate to the firmware to boot to setup "
+"interface."
+msgstr ""
+"Otentikasi diperlukan untuk mengindikasikan ke firmware agar boot ke "
+"antarmuka penyiapan."
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:57
+msgid "Set a wall message"
+msgstr "Setel suatu pesan wall"
+
+#: ../src/login/org.freedesktop.login1.policy.in.h:58
+msgid "Authentication is required to set a wall message"
+msgstr "Otentikasi diperlukan untuk menyetel pesan wall"
+
+#: ../src/machine/org.freedesktop.machine1.policy.in.h:1
+msgid "Log into a local container"
+msgstr "Log masuk ke dalam suatu kontainer lokal"
+
+#: ../src/machine/org.freedesktop.machine1.policy.in.h:2
+msgid "Authentication is required to log into a local container."
+msgstr "Otentikasi diperlukan untuk log masuk ke dalam suatu kontainer lokal."
+
+#: ../src/machine/org.freedesktop.machine1.policy.in.h:3
+msgid "Log into the local host"
+msgstr "Log masuk ke dalam host lokal"
+
+#: ../src/machine/org.freedesktop.machine1.policy.in.h:4
+msgid "Authentication is required to log into the local host."
+msgstr "Otentikasi diperlukan untuk log masuk ke dalam host lokal."
+
+#: ../src/machine/org.freedesktop.machine1.policy.in.h:5
+msgid "Acquire a shell in a local container"
+msgstr "Dapatkan sebuah shell dalam kontainer lokal"
+
+#: ../src/machine/org.freedesktop.machine1.policy.in.h:6
+msgid "Authentication is required to acquire a shell in a local container."
+msgstr ""
+"Otentikasi diperlukan untuk mendapatkan suatu shell dalam sebuah kontainer "
+"lokal."
+
+#: ../src/machine/org.freedesktop.machine1.policy.in.h:7
+msgid "Acquire a shell on the local host"
+msgstr "Dapatkan sebuah shell pada host lokal"
+
+#: ../src/machine/org.freedesktop.machine1.policy.in.h:8
+msgid "Authentication is required to acquire a shell on the local host."
+msgstr "Otentikasi diperlukan untuk mendapatkan suatu shell pada host lokal."
+
+#: ../src/machine/org.freedesktop.machine1.policy.in.h:9
+msgid "Acquire a pseudo TTY in a local container"
+msgstr "Dapatkan sebuah TTY semu dalam suatu kontainer lokal"
+
+#: ../src/machine/org.freedesktop.machine1.policy.in.h:10
+msgid ""
+"Authentication is required to acquire a pseudo TTY in a local container."
+msgstr ""
+"Otentikasi diperlukan untuk mendapatkan suatu TTY semu dalam sebuah "
+"kontainer lokal."
+
+#: ../src/machine/org.freedesktop.machine1.policy.in.h:11
+msgid "Acquire a pseudo TTY on the local host"
+msgstr "Dapatkan sebuah TTY semu pada host lokal"
+
+#: ../src/machine/org.freedesktop.machine1.policy.in.h:12
+msgid "Authentication is required to acquire a pseudo TTY on the local host."
+msgstr ""
+"Otentikasi diperlukan untuk mendapatkan suatu TTY semu pada host lokal."
+
+#: ../src/machine/org.freedesktop.machine1.policy.in.h:13
+msgid "Manage local virtual machines and containers"
+msgstr "Kelola mesin virtual lokal dan kontainer"
+
+#: ../src/machine/org.freedesktop.machine1.policy.in.h:14
+msgid ""
+"Authentication is required to manage local virtual machines and containers."
+msgstr ""
+"Otentikasi diperlukan untuk mengelola mesin virtual lokal dan kontainer."
+
+#: ../src/machine/org.freedesktop.machine1.policy.in.h:15
+msgid "Manage local virtual machine and container images"
+msgstr "Kelola mesin virtual lokal dan image kontainer"
+
+#: ../src/machine/org.freedesktop.machine1.policy.in.h:16
+msgid ""
+"Authentication is required to manage local virtual machine and container "
+"images."
+msgstr ""
+"Otentikasi diperlukan untuk mengelola mesin virtual lokal dan image "
+"kontainer."
+
+#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:1
+msgid "Set system time"
+msgstr "Setel waktu sistem"
+
+#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:2
+msgid "Authentication is required to set the system time."
+msgstr "Otentikasi diperlukan untuk menyetel waktu sistem."
+
+#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:3
+msgid "Set system timezone"
+msgstr "Setel zona waktu sistem"
+
+#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:4
+msgid "Authentication is required to set the system timezone."
+msgstr "Otentikasi diperlukan untuk menyetel zona waktu sistem."
+
+#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:5
+msgid "Set RTC to local timezone or UTC"
+msgstr "Atur RTC ke zona waktu lokal atau UTC"
+
+#: ../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 ""
+"Otentikasi diperlukan untuk mengendalikan apakah RTC menyimpan waktu UTC "
+"atau lokal."
+
+#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:7
+msgid "Turn network time synchronization on or off"
+msgstr "Nyalakan atau matikan penyelarasan waktu jaringan"
+
+#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:8
+msgid ""
+"Authentication is required to control whether network time synchronization "
+"shall be enabled."
+msgstr ""
+"Otentikasi diperlukan untuk mengendalikan apakah sinkronisasi waktu jaringan "
+"mesti difungsikan."
+
+#: ../src/core/dbus-unit.c:450
+msgid "Authentication is required to start '$(unit)'."
+msgstr "Otentikasi diperlukan untuk memulai '$(unit)'."
+
+#: ../src/core/dbus-unit.c:451
+msgid "Authentication is required to stop '$(unit)'."
+msgstr "Otentikasi diperlukan untuk menghentikan '$(unit)'."
+
+#: ../src/core/dbus-unit.c:452
+msgid "Authentication is required to reload '$(unit)'."
+msgstr "Otentikasi diperlukan untuk memuat ulang '$(unit)'."
+
+#: ../src/core/dbus-unit.c:453 ../src/core/dbus-unit.c:454
+msgid "Authentication is required to restart '$(unit)'."
+msgstr "Otentikasi diperlukan untuk memulai ulang '$(unit)'."
+
+#: ../src/core/dbus-unit.c:560
+msgid "Authentication is required to kill '$(unit)'."
+msgstr "Otentikasi diperlukan untuk mematikan '$(unit)'."
+
+#: ../src/core/dbus-unit.c:590
+msgid "Authentication is required to reset the \"failed\" state of '$(unit)'."
+msgstr ""
+"Otentikasi diperlukan untuk me-reset keadaan \"failed\" dari '$(unit)'."
+
+#: ../src/core/dbus-unit.c:622
+msgid "Authentication is required to set properties on '$(unit)'."
+msgstr "Otentikasi diperlukan untuk menata properti pada '$(unit)'."
diff --git a/src/basic/fs-util.c b/src/basic/fs-util.c
index e24e7036f7..f0c6f3265e 100644
--- a/src/basic/fs-util.c
+++ b/src/basic/fs-util.c
@@ -38,6 +38,7 @@
#include "mkdir.h"
#include "parse-util.h"
#include "path-util.h"
+#include "stat-util.h"
#include "stdio-util.h"
#include "string-util.h"
#include "strv.h"
@@ -495,6 +496,34 @@ int get_files_in_directory(const char *path, char ***list) {
return n;
}
+int var_tmp(char **ret) {
+ const char *tmp_dir = NULL;
+ const char *env_tmp_dir = NULL;
+ char *c = NULL;
+ int r;
+
+ assert(ret);
+
+ env_tmp_dir = getenv("TMPDIR");
+ if (env_tmp_dir != NULL) {
+ r = is_dir(env_tmp_dir, true);
+ if (r < 0 && r != -ENOENT)
+ return r;
+ if (r > 0)
+ tmp_dir = env_tmp_dir;
+ }
+
+ if (!tmp_dir)
+ tmp_dir = "/var/tmp";
+
+ c = strdup(tmp_dir);
+ if (!c)
+ return -ENOMEM;
+ *ret = c;
+
+ return 0;
+}
+
int inotify_add_watch_fd(int fd, int what, uint32_t mask) {
char path[strlen("/proc/self/fd/") + DECIMAL_STR_MAX(int) + 1];
int r;
diff --git a/src/basic/fs-util.h b/src/basic/fs-util.h
index 517b599d6f..075e5942b1 100644
--- a/src/basic/fs-util.h
+++ b/src/basic/fs-util.h
@@ -61,6 +61,8 @@ int mkfifo_atomic(const char *path, mode_t mode);
int get_files_in_directory(const char *path, char ***list);
+int var_tmp(char **ret);
+
#define INOTIFY_EVENT_MAX (sizeof(struct inotify_event) + NAME_MAX + 1)
#define FOREACH_INOTIFY_EVENT(e, buffer, sz) \
diff --git a/src/basic/strv.c b/src/basic/strv.c
index 578a9c1005..53298268f4 100644
--- a/src/basic/strv.c
+++ b/src/basic/strv.c
@@ -139,16 +139,16 @@ char **strv_new_ap(const char *x, va_list ap) {
va_list aq;
/* As a special trick we ignore all listed strings that equal
- * (const char*) -1. This is supposed to be used with the
+ * STRV_IGNORE. This is supposed to be used with the
* STRV_IFNOTNULL() macro to include possibly NULL strings in
* the string list. */
if (x) {
- n = x == (const char*) -1 ? 0 : 1;
+ n = x == STRV_IGNORE ? 0 : 1;
va_copy(aq, ap);
while ((s = va_arg(aq, const char*))) {
- if (s == (const char*) -1)
+ if (s == STRV_IGNORE)
continue;
n++;
@@ -162,7 +162,7 @@ char **strv_new_ap(const char *x, va_list ap) {
return NULL;
if (x) {
- if (x != (const char*) -1) {
+ if (x != STRV_IGNORE) {
a[i] = strdup(x);
if (!a[i])
goto fail;
@@ -171,7 +171,7 @@ char **strv_new_ap(const char *x, va_list ap) {
while ((s = va_arg(ap, const char*))) {
- if (s == (const char*) -1)
+ if (s == STRV_IGNORE)
continue;
a[i] = strdup(s);
@@ -834,7 +834,7 @@ bool strv_fnmatch(char* const* patterns, const char *s, int flags) {
char* const* p;
STRV_FOREACH(p, patterns)
- if (fnmatch(*p, s, 0) == 0)
+ if (fnmatch(*p, s, flags) == 0)
return true;
return false;
diff --git a/src/basic/strv.h b/src/basic/strv.h
index f61bbb5386..683ce83a2a 100644
--- a/src/basic/strv.h
+++ b/src/basic/strv.h
@@ -69,8 +69,10 @@ bool strv_equal(char **a, char **b);
char **strv_new(const char *x, ...) _sentinel_;
char **strv_new_ap(const char *x, va_list ap);
+#define STRV_IGNORE ((const char *) -1)
+
static inline const char* STRV_IFNOTNULL(const char *x) {
- return x ? x : (const char *) -1;
+ return x ? x : STRV_IGNORE;
}
static inline bool strv_isempty(char * const *l) {
diff --git a/src/journal/journal-verify.c b/src/journal/journal-verify.c
index a37316b8f9..f61f158e8a 100644
--- a/src/journal/journal-verify.c
+++ b/src/journal/journal-verify.c
@@ -26,6 +26,7 @@
#include "compress.h"
#include "fd-util.h"
#include "fileio.h"
+#include "fs-util.h"
#include "journal-authenticate.h"
#include "journal-def.h"
#include "journal-file.h"
@@ -825,6 +826,8 @@ int journal_file_verify(
int data_fd = -1, entry_fd = -1, entry_array_fd = -1;
unsigned i;
bool found_last = false;
+ _cleanup_free_ char *tmp_dir = NULL;
+
#ifdef HAVE_GCRYPT
uint64_t last_tag = 0;
#endif
@@ -843,19 +846,25 @@ int journal_file_verify(
} else if (f->seal)
return -ENOKEY;
- data_fd = open_tmpfile_unlinkable("/var/tmp", O_RDWR | O_CLOEXEC);
+ r = var_tmp(&tmp_dir);
+ if (r < 0) {
+ log_error_errno(r, "Failed to determine temporary directory: %m");
+ goto fail;
+ }
+
+ data_fd = open_tmpfile_unlinkable(tmp_dir, O_RDWR | O_CLOEXEC);
if (data_fd < 0) {
r = log_error_errno(data_fd, "Failed to create data file: %m");
goto fail;
}
- entry_fd = open_tmpfile_unlinkable("/var/tmp", O_RDWR | O_CLOEXEC);
+ entry_fd = open_tmpfile_unlinkable(tmp_dir, O_RDWR | O_CLOEXEC);
if (entry_fd < 0) {
r = log_error_errno(entry_fd, "Failed to create entry file: %m");
goto fail;
}
- entry_array_fd = open_tmpfile_unlinkable("/var/tmp", O_RDWR | O_CLOEXEC);
+ entry_array_fd = open_tmpfile_unlinkable(tmp_dir, O_RDWR | O_CLOEXEC);
if (entry_array_fd < 0) {
r = log_error_errno(entry_array_fd,
"Failed to create entry array file: %m");
diff --git a/src/journal/journalctl.c b/src/journal/journalctl.c
index 8e4897831b..4cc0c2b6c2 100644
--- a/src/journal/journalctl.c
+++ b/src/journal/journalctl.c
@@ -348,6 +348,7 @@ static int parse_argv(int argc, char *argv[]) {
ARG_NO_FULL,
ARG_NO_TAIL,
ARG_NEW_ID128,
+ ARG_THIS_BOOT,
ARG_LIST_BOOTS,
ARG_USER,
ARG_SYSTEM,
@@ -392,9 +393,9 @@ static int parse_argv(int argc, char *argv[]) {
{ "new-id128", no_argument, NULL, ARG_NEW_ID128 },
{ "quiet", no_argument, NULL, 'q' },
{ "merge", no_argument, NULL, 'm' },
+ { "this-boot", no_argument, NULL, ARG_THIS_BOOT }, /* deprecated */
{ "boot", optional_argument, NULL, 'b' },
{ "list-boots", no_argument, NULL, ARG_LIST_BOOTS },
- { "this-boot", optional_argument, NULL, 'b' }, /* deprecated */
{ "dmesg", no_argument, NULL, 'k' },
{ "system", no_argument, NULL, ARG_SYSTEM },
{ "user", no_argument, NULL, ARG_USER },
@@ -544,6 +545,10 @@ static int parse_argv(int argc, char *argv[]) {
arg_merge = true;
break;
+ case ARG_THIS_BOOT:
+ arg_boot = true;
+ break;
+
case 'b':
arg_boot = true;
@@ -868,8 +873,8 @@ static int parse_argv(int argc, char *argv[]) {
return -EINVAL;
}
- if ((arg_boot || arg_action == ACTION_LIST_BOOTS) && (arg_file || arg_directory || arg_merge)) {
- log_error("Using --boot or --list-boots with --file, --directory or --merge is not supported.");
+ if ((arg_boot || arg_action == ACTION_LIST_BOOTS) && arg_merge) {
+ log_error("Using --boot or --list-boots with --merge is not supported.");
return -EINVAL;
}
@@ -1102,13 +1107,13 @@ static int discover_next_boot(sd_journal *j,
static int get_boots(
sd_journal *j,
BootId **boots,
- sd_id128_t *query_ref_boot,
- int ref_boot_offset) {
+ sd_id128_t *boot_id,
+ int offset) {
bool skip_once;
int r, count = 0;
BootId *head = NULL, *tail = NULL;
- const bool advance_older = query_ref_boot && ref_boot_offset <= 0;
+ const bool advance_older = boot_id && offset <= 0;
sd_id128_t previous_boot_id;
assert(j);
@@ -1116,19 +1121,19 @@ static int get_boots(
/* Adjust for the asymmetry that offset 0 is
* the last (and current) boot, while 1 is considered the
* (chronological) first boot in the journal. */
- skip_once = query_ref_boot && sd_id128_is_null(*query_ref_boot) && ref_boot_offset < 0;
+ skip_once = boot_id && sd_id128_is_null(*boot_id) && offset <= 0;
/* Advance to the earliest/latest occurrence of our reference
* boot ID (taking our lookup direction into account), so that
* discover_next_boot() can do its job.
* If no reference is given, the journal head/tail will do,
* they're "virtual" boots after all. */
- if (query_ref_boot && !sd_id128_is_null(*query_ref_boot)) {
+ if (boot_id && !sd_id128_is_null(*boot_id)) {
char match[9+32+1] = "_BOOT_ID=";
sd_journal_flush_matches(j);
- sd_id128_to_string(*query_ref_boot, match + 9);
+ sd_id128_to_string(*boot_id, match + 9);
r = sd_journal_add_match(j, match, sizeof(match) - 1);
if (r < 0)
return r;
@@ -1148,7 +1153,7 @@ static int get_boots(
return r;
else if (r == 0)
goto finish;
- else if (ref_boot_offset == 0) {
+ else if (offset == 0) {
count = 1;
goto finish;
}
@@ -1187,14 +1192,14 @@ static int get_boots(
previous_boot_id = current->id;
- if (query_ref_boot) {
+ if (boot_id) {
if (!skip_once)
- ref_boot_offset += advance_older ? 1 : -1;
+ offset += advance_older ? 1 : -1;
skip_once = false;
- if (ref_boot_offset == 0) {
+ if (offset == 0) {
count = 1;
- *query_ref_boot = current->id;
+ *boot_id = current->id;
break;
}
} else {
@@ -1250,7 +1255,7 @@ static int list_boots(sd_journal *j) {
static int add_boot(sd_journal *j) {
char match[9+32+1] = "_BOOT_ID=";
- sd_id128_t ref_boot_id;
+ sd_id128_t boot_id;
int r;
assert(j);
@@ -1258,11 +1263,16 @@ static int add_boot(sd_journal *j) {
if (!arg_boot)
return 0;
- if (arg_boot_offset == 0 && sd_id128_equal(arg_boot_id, SD_ID128_NULL))
+ /* Take a shortcut and use the current boot_id, which we can do very quickly.
+ * We can do this only when we logs are coming from the current machine,
+ * so take the slow path if log location is specified. */
+ if (arg_boot_offset == 0 && sd_id128_equal(arg_boot_id, SD_ID128_NULL) &&
+ !arg_directory && !arg_file)
+
return add_match_this_boot(j, arg_machine);
- ref_boot_id = arg_boot_id;
- r = get_boots(j, NULL, &ref_boot_id, arg_boot_offset);
+ boot_id = arg_boot_id;
+ r = get_boots(j, NULL, &boot_id, arg_boot_offset);
assert(r <= 1);
if (r <= 0) {
const char *reason = (r == 0) ? "No such boot ID in journal" : strerror(-r);
@@ -1277,7 +1287,7 @@ static int add_boot(sd_journal *j) {
return r == 0 ? -ENODATA : r;
}
- sd_id128_to_string(ref_boot_id, match + 9);
+ sd_id128_to_string(boot_id, match + 9);
r = sd_journal_add_match(j, match, sizeof(match) - 1);
if (r < 0)
diff --git a/src/libsystemd/sd-bus/bus-match.c b/src/libsystemd/sd-bus/bus-match.c
index 397baf6f33..db01f21135 100644
--- a/src/libsystemd/sd-bus/bus-match.c
+++ b/src/libsystemd/sd-bus/bus-match.c
@@ -429,6 +429,9 @@ int bus_match_run(
r = bus_match_run(bus, c, m);
if (r != 0)
return r;
+
+ if (bus && bus->match_callbacks_modified)
+ return 0;
}
}
diff --git a/src/resolve/resolved-manager.c b/src/resolve/resolved-manager.c
index add463b6a9..92ade820ac 100644
--- a/src/resolve/resolved-manager.c
+++ b/src/resolve/resolved-manager.c
@@ -1200,6 +1200,11 @@ int manager_compile_dns_servers(Manager *m, OrderedSet **dns) {
return 0;
}
+/* filter_route is a tri-state:
+ * < 0: no filtering
+ * = 0 or false: return only domains which should be used for searching
+ * > 0 or true: return only domains which are for routing only
+ */
int manager_compile_search_domains(Manager *m, OrderedSet **domains, int filter_route) {
DnsSearchDomain *d;
Iterator i;
diff --git a/src/systemctl/systemctl.c b/src/systemctl/systemctl.c
index c0b285b58f..b575437bcb 100644
--- a/src/systemctl/systemctl.c
+++ b/src/systemctl/systemctl.c
@@ -4367,7 +4367,7 @@ static int print_property(const char *name, sd_bus_message *m, const char *conte
return bus_log_parse_error(r);
while ((r = sd_bus_message_read(m, "(sb)", &path, &ignore)) > 0)
- print_prop("EnvironmentFile", "%s (ignore_errors=%s)\n", path, yes_no(ignore));
+ print_prop("EnvironmentFile", "%s (ignore_errors=%s)", path, yes_no(ignore));
if (r < 0)
return bus_log_parse_error(r);
@@ -5605,6 +5605,46 @@ static int mangle_names(char **original_names, char ***mangled_names) {
return 0;
}
+static int unit_exists(const char *unit) {
+ _cleanup_(sd_bus_message_unrefp) sd_bus_message *reply = NULL, *m = NULL;
+ _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL;
+ _cleanup_free_ char *path = NULL;
+ static const struct bus_properties_map property_map[] = {
+ { "LoadState", "s", NULL, offsetof(UnitStatusInfo, load_state) },
+ { "ActiveState", "s", NULL, offsetof(UnitStatusInfo, active_state)},
+ {},
+ };
+ UnitStatusInfo info = {};
+ sd_bus *bus;
+ int r;
+
+ path = unit_dbus_path_from_name(unit);
+ if (!path)
+ return log_oom();
+
+ r = acquire_bus(BUS_MANAGER, &bus);
+ if (r < 0)
+ return r;
+
+ r = sd_bus_call_method(
+ bus,
+ "org.freedesktop.systemd1",
+ path,
+ "org.freedesktop.DBus.Properties",
+ "GetAll",
+ &error,
+ &reply,
+ "s", "");
+ if (r < 0)
+ return log_error_errno(r, "Failed to get properties: %s", bus_error_message(&error, r));
+
+ r = bus_message_map_all_properties(reply, property_map, &info);
+ if (r < 0)
+ return log_error_errno(r, "Failed to map properties: %s", bus_error_message(&error, r));
+
+ return !streq_ptr(info.load_state, "not-found") || !streq_ptr(info.active_state, "inactive");
+}
+
static int enable_unit(int argc, char *argv[], void *userdata) {
_cleanup_strv_free_ char **names = NULL;
const char *verb = argv[0];
@@ -5666,6 +5706,14 @@ static int enable_unit(int argc, char *argv[], void *userdata) {
const char *method;
sd_bus *bus;
+ if (STR_IN_SET(verb, "mask", "unmask")) {
+ r = unit_exists(*names);
+ if (r < 0)
+ return r;
+ if (r == 0)
+ log_notice("Unit %s does not exist, proceeding anyway.", *names);
+ }
+
r = acquire_bus(BUS_MANAGER, &bus);
if (r < 0)
return r;
diff --git a/src/test/test-fs-util.c b/src/test/test-fs-util.c
index 6db2c2b6f1..e0c040f39b 100644
--- a/src/test/test-fs-util.c
+++ b/src/test/test-fs-util.c
@@ -82,10 +82,56 @@ static void test_get_files_in_directory(void) {
assert_se(get_files_in_directory(".", NULL) >= 0);
}
+static void test_var_tmp(void) {
+ char *tmp_dir = NULL;
+ char *tmpdir_backup = NULL;
+ const char *default_var_tmp = NULL;
+ const char *var_name;
+ bool do_overwrite = true;
+
+ default_var_tmp = "/var/tmp";
+ var_name = "TMPDIR";
+
+ if (getenv(var_name) != NULL) {
+ tmpdir_backup = strdup(getenv(var_name));
+ assert_se(tmpdir_backup != NULL);
+ }
+
+ unsetenv(var_name);
+
+ var_tmp(&tmp_dir);
+ assert_se(!strcmp(tmp_dir, default_var_tmp));
+
+ free(tmp_dir);
+
+ setenv(var_name, "/tmp", do_overwrite);
+ assert_se(!strcmp(getenv(var_name), "/tmp"));
+
+ var_tmp(&tmp_dir);
+ assert_se(!strcmp(tmp_dir, "/tmp"));
+
+ free(tmp_dir);
+
+ setenv(var_name, "/88_does_not_exist_88", do_overwrite);
+ assert_se(!strcmp(getenv(var_name), "/88_does_not_exist_88"));
+
+ var_tmp(&tmp_dir);
+ assert_se(!strcmp(tmp_dir, default_var_tmp));
+
+ free(tmp_dir);
+
+ if (tmpdir_backup != NULL) {
+ setenv(var_name, tmpdir_backup, do_overwrite);
+ assert_se(!strcmp(getenv(var_name), tmpdir_backup));
+ free(tmpdir_backup);
+ }
+}
+
int main(int argc, char *argv[]) {
test_unlink_noerrno();
test_readlink_and_make_absolute();
test_get_files_in_directory();
+ test_var_tmp();
return 0;
}
diff --git a/src/test/test-path-util.c b/src/test/test-path-util.c
index b53324b5e6..6094d4c3e5 100644
--- a/src/test/test-path-util.c
+++ b/src/test/test-path-util.c
@@ -114,7 +114,7 @@ static void test_find_binary(const char *self) {
assert_se(find_binary(self, &p) == 0);
puts(p);
- assert_se(endswith(p, "/test-path-util"));
+ assert_se(endswith(p, "/lt-test-path-util"));
assert_se(path_is_absolute(p));
free(p);
diff --git a/src/test/test-strv.c b/src/test/test-strv.c
index fc01dcfaf1..cf5887d258 100644
--- a/src/test/test-strv.c
+++ b/src/test/test-strv.c
@@ -685,6 +685,16 @@ static void test_foreach_string(void) {
assert_se(streq(x, "zzz"));
}
+static void test_strv_fnmatch(void) {
+ _cleanup_free_ char **v = NULL;
+
+ assert_se(!strv_fnmatch(STRV_MAKE_EMPTY, "a", 0));
+
+ v = strv_new("*\\*", NULL);
+ assert_se(!strv_fnmatch(v, "\\", 0));
+ assert_se(strv_fnmatch(v, "\\", FNM_NOESCAPE));
+}
+
int main(int argc, char *argv[]) {
test_specifier_printf();
test_strv_foreach();
@@ -750,6 +760,7 @@ int main(int argc, char *argv[]) {
test_strv_make_nulstr();
test_foreach_string();
+ test_strv_fnmatch();
return 0;
}
diff --git a/test/networkd-test.py b/test/networkd-test.py
index 78da0a213a..bfa1bf3580 100755
--- a/test/networkd-test.py
+++ b/test/networkd-test.py
@@ -42,6 +42,8 @@ networkd_active = subprocess.call(['systemctl', 'is-active', '--quiet',
'systemd-networkd']) == 0
have_dnsmasq = shutil.which('dnsmasq')
+RESOLV_CONF = '/run/systemd/resolve/resolv.conf'
+
@unittest.skipIf(networkd_active,
'networkd is already active')
@@ -104,6 +106,7 @@ class ClientTestBase:
def do_test(self, coldplug=True, ipv6=False, extra_opts='',
online_timeout=10, dhcp_mode='yes'):
+ subprocess.check_call(['systemctl', 'start', 'systemd-resolved'])
with open(self.config, 'w') as f:
f.write('''[Match]
Name=%s
@@ -179,20 +182,14 @@ DHCP=%s
self.print_server_log()
raise
- # verify resolv.conf if it gets dynamically managed
- if os.path.islink('/etc/resolv.conf'):
- for timeout in range(50):
- with open('/etc/resolv.conf') as f:
- contents = f.read()
- if 'nameserver 192.168.5.1\n' in contents:
- break
- # resolv.conf can have at most three nameservers; if we already
- # have three different ones, that's also okay
- if contents.count('nameserver ') >= 3:
- break
- time.sleep(0.1)
- else:
- self.fail('nameserver 192.168.5.1 not found in /etc/resolv.conf')
+ for timeout in range(50):
+ with open(RESOLV_CONF) as f:
+ contents = f.read()
+ if 'nameserver 192.168.5.1\n' in contents:
+ break
+ time.sleep(0.1)
+ else:
+ self.fail('nameserver 192.168.5.1 not found in ' + RESOLV_CONF)
if not coldplug:
# check post-down.d hook
@@ -227,6 +224,32 @@ DHCP=%s
def test_hotplug_dhcp_ip6(self):
self.do_test(coldplug=False, ipv6=True)
+ def test_route_only_dns(self):
+ with open('/run/systemd/network/myvpn.netdev', 'w') as f:
+ f.write('''[NetDev]
+Name=dummy0
+Kind=dummy
+MACAddress=12:34:56:78:9a:bc''')
+ with open('/run/systemd/network/myvpn.network', 'w') as f:
+ f.write('''[Match]
+Name=dummy0
+[Network]
+Address=192.168.42.100
+DNS=192.168.42.1
+Domains= ~company''')
+ self.addCleanup(os.remove, '/run/systemd/network/myvpn.netdev')
+ self.addCleanup(os.remove, '/run/systemd/network/myvpn.network')
+
+ self.do_test(coldplug=True, ipv6=False,
+ extra_opts='IPv6AcceptRouterAdvertisements=False')
+
+ with open(RESOLV_CONF) as f:
+ contents = f.read()
+ # ~company is not a search domain, only a routing domain
+ self.assertNotRegex(contents, 'search.*company')
+ # our global server should appear
+ self.assertIn('nameserver 192.168.5.1\n', contents)
+
@unittest.skipUnless(have_dnsmasq, 'dnsmasq not installed')
class DnsmasqClientTest(ClientTestBase, unittest.TestCase):
@@ -392,16 +415,15 @@ Domains= one two three four five six seven eight nine ten''')
subprocess.check_call(['systemctl', 'start', 'systemd-networkd'])
- if os.path.islink('/etc/resolv.conf'):
- for timeout in range(50):
- with open('/etc/resolv.conf') as f:
- contents = f.read()
- if 'search one\n' in contents:
- break
- time.sleep(0.1)
- self.assertIn('search one two three four five six\n'
- '# Too many search domains configured, remaining ones ignored.\n',
- contents)
+ for timeout in range(50):
+ with open(RESOLV_CONF) as f:
+ contents = f.read()
+ if ' one' in contents:
+ break
+ time.sleep(0.1)
+ self.assertRegex(contents, 'search .*one two three four')
+ self.assertNotIn('seven\n', contents)
+ self.assertIn('# Too many search domains configured, remaining ones ignored.\n', contents)
def test_search_domains_too_long(self):
@@ -430,16 +452,14 @@ Domains=''')
subprocess.check_call(['systemctl', 'start', 'systemd-networkd'])
- if os.path.islink('/etc/resolv.conf'):
- for timeout in range(50):
- with open('/etc/resolv.conf') as f:
- contents = f.read()
- if 'search one\n' in contents:
- break
- time.sleep(0.1)
- self.assertIn('search %(p)s0 %(p)s1 %(p)s2 %(p)s3\n'
- '# Total length of all search domains is too long, remaining ones ignored.' % {'p': name_prefix},
- contents)
+ for timeout in range(50):
+ with open(RESOLV_CONF) as f:
+ contents = f.read()
+ if ' one' in contents:
+ break
+ time.sleep(0.1)
+ self.assertRegex(contents, 'search .*%(p)s0 %(p)s1 %(p)s2' % {'p': name_prefix})
+ self.assertIn('# Total length of all search domains is too long, remaining ones ignored.', contents)
if __name__ == '__main__':