diff --git a/Makefile.am b/Makefile.am index fe3c1eca4f..4685fbda24 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1490,7 +1490,8 @@ libexec_PROGRAMS += \ noinst_LTLIBRARIES += \ src/libNetworkManagerBase.la \ src/libNetworkManager.la \ - src/libsystemd-nm.la + src/libnm-systemd-core.la \ + $(NULL) check-config-options: $(srcdir)/tools/check-config-options.sh "$(srcdir)" @@ -1499,141 +1500,173 @@ check_local += check-config-options ############################################################################### -src_libsystemd_nm_la_cppflags = \ +libsystemd_cppflags = \ $(dflt_cppflags) \ -I$(srcdir)/shared \ -I$(builddir)/shared \ + -I$(srcdir)/shared/systemd/ \ + -I$(srcdir)/shared/systemd/sd-adapt-shared \ + -I$(srcdir)/shared/systemd/src/basic \ + $(LIBSYSTEMD_NM_CFLAGS) \ + $(GLIB_CFLAGS) \ + $(CODE_COVERAGE_CFLAGS) \ + $(NULL) + +libsystemd_libadd = \ + $(GLIB_LIBS) \ + $(CODE_COVERAGE_LDFLAGS) \ + $(NULL) + +noinst_LTLIBRARIES += shared/systemd/libnm-systemd-shared.la + +shared_systemd_libnm_systemd_shared_la_CPPFLAGS = \ + $(libsystemd_cppflags) \ + -DNETWORKMANAGER_COMPILATION=NM_NETWORKMANAGER_COMPILATION_SYSTEMD_SHARED \ + -DG_LOG_DOMAIN=\""libnm"\" \ + $(NULL) + +shared_systemd_libnm_systemd_shared_la_SOURCES = \ + shared/systemd/nm-sd-utils-shared.c \ + shared/systemd/nm-sd-utils-shared.h \ + shared/systemd/sd-adapt-shared/architecture.h \ + shared/systemd/sd-adapt-shared/btrfs-util.h \ + shared/systemd/sd-adapt-shared/build.h \ + shared/systemd/sd-adapt-shared/cgroup-util.h \ + shared/systemd/sd-adapt-shared/copy.h \ + shared/systemd/sd-adapt-shared/def.h \ + shared/systemd/sd-adapt-shared/device-nodes.h \ + shared/systemd/sd-adapt-shared/dirent-util.h \ + shared/systemd/sd-adapt-shared/errno-list.h \ + shared/systemd/sd-adapt-shared/format-util.h \ + shared/systemd/sd-adapt-shared/glob-util.h \ + shared/systemd/sd-adapt-shared/gunicode.h \ + shared/systemd/sd-adapt-shared/ioprio.h \ + shared/systemd/sd-adapt-shared/locale-util.h \ + shared/systemd/sd-adapt-shared/memfd-util.h \ + shared/systemd/sd-adapt-shared/missing.h \ + shared/systemd/sd-adapt-shared/missing_socket.h \ + shared/systemd/sd-adapt-shared/missing_syscall.h \ + shared/systemd/sd-adapt-shared/missing_timerfd.h \ + shared/systemd/sd-adapt-shared/mkdir.h \ + shared/systemd/sd-adapt-shared/nm-sd-adapt-shared.h \ + shared/systemd/sd-adapt-shared/nm-sd-adapt-shared.h \ + shared/systemd/sd-adapt-shared/procfs-util.h \ + shared/systemd/sd-adapt-shared/raw-clone.h \ + shared/systemd/sd-adapt-shared/rlimit-util.h \ + shared/systemd/sd-adapt-shared/terminal-util.h \ + shared/systemd/sd-adapt-shared/unaligned.h \ + shared/systemd/sd-adapt-shared/user-util.h \ + shared/systemd/sd-adapt-shared/virt.h \ + shared/systemd/src/basic/alloc-util.c \ + shared/systemd/src/basic/alloc-util.h \ + shared/systemd/src/basic/async.h \ + shared/systemd/src/basic/env-file.c \ + shared/systemd/src/basic/env-file.h \ + shared/systemd/src/basic/env-util.c \ + shared/systemd/src/basic/env-util.h \ + shared/systemd/src/basic/escape.c \ + shared/systemd/src/basic/escape.h \ + shared/systemd/src/basic/ether-addr-util.c \ + shared/systemd/src/basic/ether-addr-util.h \ + shared/systemd/src/basic/extract-word.c \ + shared/systemd/src/basic/extract-word.h \ + shared/systemd/src/basic/fd-util.c \ + shared/systemd/src/basic/fd-util.h \ + shared/systemd/src/basic/fileio.c \ + shared/systemd/src/basic/fileio.h \ + shared/systemd/src/basic/fs-util.c \ + shared/systemd/src/basic/fs-util.h \ + shared/systemd/src/basic/hash-funcs.c \ + shared/systemd/src/basic/hash-funcs.h \ + shared/systemd/src/basic/hashmap.c \ + shared/systemd/src/basic/hashmap.h \ + shared/systemd/src/basic/hexdecoct.c \ + shared/systemd/src/basic/hexdecoct.h \ + shared/systemd/src/basic/hostname-util.c \ + shared/systemd/src/basic/hostname-util.h \ + shared/systemd/src/basic/in-addr-util.c \ + shared/systemd/src/basic/in-addr-util.h \ + shared/systemd/src/basic/io-util.c \ + shared/systemd/src/basic/io-util.h \ + shared/systemd/src/basic/list.h \ + shared/systemd/src/basic/log.h \ + shared/systemd/src/basic/macro.h \ + shared/systemd/src/basic/mempool.c \ + shared/systemd/src/basic/mempool.h \ + shared/systemd/src/basic/missing_type.h \ + shared/systemd/src/basic/parse-util.c \ + shared/systemd/src/basic/parse-util.h \ + shared/systemd/src/basic/path-util.c \ + shared/systemd/src/basic/path-util.h \ + shared/systemd/src/basic/prioq.c \ + shared/systemd/src/basic/prioq.h \ + shared/systemd/src/basic/process-util.c \ + shared/systemd/src/basic/process-util.h \ + shared/systemd/src/basic/random-util.c \ + shared/systemd/src/basic/random-util.h \ + shared/systemd/src/basic/refcnt.h \ + shared/systemd/src/basic/set.h \ + shared/systemd/src/basic/signal-util.h \ + shared/systemd/src/basic/siphash24.h \ + shared/systemd/src/basic/socket-util.c \ + shared/systemd/src/basic/socket-util.h \ + shared/systemd/src/basic/sparse-endian.h \ + shared/systemd/src/basic/stat-util.c \ + shared/systemd/src/basic/stat-util.h \ + shared/systemd/src/basic/stdio-util.h \ + shared/systemd/src/basic/string-table.c \ + shared/systemd/src/basic/string-table.h \ + shared/systemd/src/basic/string-util.c \ + shared/systemd/src/basic/string-util.h \ + shared/systemd/src/basic/strv.c \ + shared/systemd/src/basic/strv.h \ + shared/systemd/src/basic/time-util.c \ + shared/systemd/src/basic/time-util.h \ + shared/systemd/src/basic/tmpfile-util.c \ + shared/systemd/src/basic/tmpfile-util.h \ + shared/systemd/src/basic/umask-util.h \ + shared/systemd/src/basic/utf8.c \ + shared/systemd/src/basic/utf8.h \ + shared/systemd/src/basic/util.c \ + shared/systemd/src/basic/util.h \ + $(NULL) + +shared_systemd_libnm_systemd_shared_la_LIBADD = \ + $(libsystemd_libadd) \ + $(NULL) + +############################################################################### + +src_libnm_systemd_core_la_cppflags = \ + $(libsystemd_cppflags) \ -I$(srcdir)/libnm-core \ -I$(builddir)/libnm-core \ -I$(srcdir)/src \ - -I$(srcdir)/src/systemd/sd-adapt \ + -I$(srcdir)/src/systemd/sd-adapt-core \ -I$(srcdir)/src/systemd/src/systemd \ - -I$(srcdir)/src/systemd/src/basic \ -I$(srcdir)/src/systemd/src/shared \ -I$(srcdir)/src/systemd/src/libsystemd-network \ -I$(srcdir)/src/systemd/src/libsystemd/sd-event \ -DNETWORKMANAGER_COMPILATION=NM_NETWORKMANAGER_COMPILATION_SYSTEMD \ - $(LIBSYSTEMD_NM_CFLAGS) \ - $(GLIB_CFLAGS) \ - $(CODE_COVERAGE_CFLAGS) + $(NULL) -src_libsystemd_nm_la_libadd = \ - $(GLIB_LIBS) \ - $(CODE_COVERAGE_LDFLAGS) +src_libnm_systemd_core_la_libadd = \ + $(libsystemd_libadd) \ + $(NULL) -src_libsystemd_nm_la_SOURCES = \ +src_libnm_systemd_core_la_SOURCES = \ + src/systemd/nm-sd-utils-core.c \ + src/systemd/nm-sd-utils-core.h \ src/systemd/nm-sd.c \ src/systemd/nm-sd.h \ - src/systemd/nm-sd-utils.c \ - src/systemd/nm-sd-utils.h \ - src/systemd/sd-adapt/nm-sd-adapt.c \ - src/systemd/sd-adapt/nm-sd-adapt.h \ - src/systemd/sd-adapt/architecture.h \ - src/systemd/sd-adapt/btrfs-util.h \ - src/systemd/sd-adapt/build.h \ - src/systemd/sd-adapt/cgroup-util.h \ - src/systemd/sd-adapt/condition.h \ - src/systemd/sd-adapt/conf-parser.h \ - src/systemd/sd-adapt/copy.h \ - src/systemd/sd-adapt/def.h \ - src/systemd/sd-adapt/device-nodes.h \ - src/systemd/sd-adapt/dirent-util.h \ - src/systemd/sd-adapt/errno-list.h \ - src/systemd/sd-adapt/format-util.h \ - src/systemd/sd-adapt/glob-util.h \ - src/systemd/sd-adapt/gunicode.h \ - src/systemd/sd-adapt/ioprio.h \ - src/systemd/sd-adapt/khash.h \ - src/systemd/sd-adapt/locale-util.h \ - src/systemd/sd-adapt/memfd-util.h \ - src/systemd/sd-adapt/missing.h \ - src/systemd/sd-adapt/missing_socket.h \ - src/systemd/sd-adapt/missing_syscall.h \ - src/systemd/sd-adapt/missing_timerfd.h \ - src/systemd/sd-adapt/mkdir.h \ - src/systemd/sd-adapt/procfs-util.h \ - src/systemd/sd-adapt/raw-clone.h \ - src/systemd/sd-adapt/rlimit-util.h \ - src/systemd/sd-adapt/sd-daemon.h \ - src/systemd/sd-adapt/sd-device.h \ - src/systemd/sd-adapt/serialize.h \ - src/systemd/sd-adapt/stat-util.h \ - src/systemd/sd-adapt/terminal-util.h \ - src/systemd/sd-adapt/unaligned.h \ - src/systemd/sd-adapt/user-util.h \ - src/systemd/sd-adapt/virt.h \ - src/systemd/src/basic/alloc-util.c \ - src/systemd/src/basic/alloc-util.h \ - src/systemd/src/basic/async.h \ - src/systemd/src/basic/env-file.c \ - src/systemd/src/basic/env-file.h \ - src/systemd/src/basic/env-util.c \ - src/systemd/src/basic/env-util.h \ - src/systemd/src/basic/escape.c \ - src/systemd/src/basic/escape.h \ - src/systemd/src/basic/ether-addr-util.c \ - src/systemd/src/basic/ether-addr-util.h \ - src/systemd/src/basic/extract-word.c \ - src/systemd/src/basic/extract-word.h \ - src/systemd/src/basic/fd-util.c \ - src/systemd/src/basic/fd-util.h \ - src/systemd/src/basic/fileio.c \ - src/systemd/src/basic/fileio.h \ - src/systemd/src/basic/fs-util.c \ - src/systemd/src/basic/fs-util.h \ - src/systemd/src/basic/hash-funcs.c \ - src/systemd/src/basic/hash-funcs.h \ - src/systemd/src/basic/hashmap.c \ - src/systemd/src/basic/hashmap.h \ - src/systemd/src/basic/hexdecoct.c \ - src/systemd/src/basic/hexdecoct.h \ - src/systemd/src/basic/hostname-util.c \ - src/systemd/src/basic/hostname-util.h \ - src/systemd/src/basic/in-addr-util.c \ - src/systemd/src/basic/in-addr-util.h \ - src/systemd/src/basic/io-util.c \ - src/systemd/src/basic/io-util.h \ - src/systemd/src/basic/list.h \ - src/systemd/src/basic/log.h \ - src/systemd/src/basic/macro.h \ - src/systemd/src/basic/mempool.c \ - src/systemd/src/basic/mempool.h \ - src/systemd/src/basic/missing_type.h \ - src/systemd/src/basic/parse-util.c \ - src/systemd/src/basic/parse-util.h \ - src/systemd/src/basic/path-util.c \ - src/systemd/src/basic/path-util.h \ - src/systemd/src/basic/prioq.c \ - src/systemd/src/basic/prioq.h \ - src/systemd/src/basic/process-util.c \ - src/systemd/src/basic/process-util.h \ - src/systemd/src/basic/random-util.c \ - src/systemd/src/basic/random-util.h \ - src/systemd/src/basic/refcnt.h \ - src/systemd/src/basic/set.h \ - src/systemd/src/basic/signal-util.h \ - src/systemd/src/basic/siphash24.h \ - src/systemd/src/basic/socket-util.c \ - src/systemd/src/basic/socket-util.h \ - src/systemd/src/basic/sparse-endian.h \ - src/systemd/src/basic/stat-util.c \ - src/systemd/src/basic/stat-util.h \ - src/systemd/src/basic/stdio-util.h \ - src/systemd/src/basic/string-table.c \ - src/systemd/src/basic/string-table.h \ - src/systemd/src/basic/string-util.c \ - src/systemd/src/basic/string-util.h \ - src/systemd/src/basic/strv.c \ - src/systemd/src/basic/strv.h \ - src/systemd/src/basic/time-util.c \ - src/systemd/src/basic/time-util.h \ - src/systemd/src/basic/tmpfile-util.c \ - src/systemd/src/basic/tmpfile-util.h \ - src/systemd/src/basic/umask-util.h \ - src/systemd/src/basic/utf8.c \ - src/systemd/src/basic/utf8.h \ - src/systemd/src/basic/util.c \ - src/systemd/src/basic/util.h \ + src/systemd/sd-adapt-core/condition.h \ + src/systemd/sd-adapt-core/conf-parser.h \ + src/systemd/sd-adapt-core/khash.h \ + src/systemd/sd-adapt-core/nm-sd-adapt-core.c \ + src/systemd/sd-adapt-core/nm-sd-adapt-core.h \ + src/systemd/sd-adapt-core/sd-daemon.h \ + src/systemd/sd-adapt-core/sd-device.h \ + src/systemd/sd-adapt-core/stat-util.h \ src/systemd/src/libsystemd-network/arp-util.c \ src/systemd/src/libsystemd-network/arp-util.h \ src/systemd/src/libsystemd-network/dhcp-identifier.c \ @@ -1684,9 +1717,9 @@ src_libsystemd_nm_la_SOURCES = \ src/systemd/src/systemd/sd-lldp.h \ src/systemd/src/systemd/sd-ndisc.h -src_libsystemd_nm_la_CPPFLAGS = $(src_libsystemd_nm_la_cppflags) -src_libsystemd_nm_la_LIBADD = $(src_libsystemd_nm_la_libadd) -$(src_libsystemd_nm_la_OBJECTS): $(libnm_core_lib_h_pub_mkenums) +src_libnm_systemd_core_la_CPPFLAGS = $(src_libnm_systemd_core_la_cppflags) +src_libnm_systemd_core_la_LIBADD = $(src_libnm_systemd_core_la_libadd) +$(src_libnm_systemd_core_la_OBJECTS): $(libnm_core_lib_h_pub_mkenums) EXTRA_DIST += \ src/systemd/meson.build @@ -1960,7 +1993,8 @@ src_libNetworkManager_la_SOURCES = \ src_libNetworkManager_la_LIBADD = \ src/libNetworkManagerBase.la \ - src/libsystemd-nm.la \ + src/libnm-systemd-core.la \ + shared/systemd/libnm-systemd-shared.la \ shared/libnacd.la \ $(GLIB_LIBS) \ $(LIBUDEV_LIBS) \ @@ -2033,7 +2067,8 @@ src_nm_iface_helper_SOURCES = \ src_nm_iface_helper_LDADD = \ src/libNetworkManagerBase.la \ - src/libsystemd-nm.la \ + src/libnm-systemd-core.la \ + shared/systemd/libnm-systemd-shared.la \ $(GLIB_LIBS) \ $(LIBUDEV_LIBS) \ $(LIBNDP_LIBS) \ @@ -3609,14 +3644,13 @@ $(src_tests_test_wired_defname_OBJECTS): $(libnm_core_lib_h_pub_mkenums) $(src_tests_test_utils_OBJECTS): $(libnm_core_lib_h_pub_mkenums) src_tests_test_systemd_CPPFLAGS = \ - $(src_libsystemd_nm_la_cppflags) \ + $(src_libnm_systemd_core_la_cppflags) \ -DNETWORKMANAGER_COMPILATION_TEST -src_tests_test_systemd_SOURCES = \ - src/tests/test-systemd.c src_tests_test_systemd_LDADD = \ - src/libsystemd-nm.la \ + src/libnm-systemd-core.la \ + shared/systemd/libnm-systemd-shared.la \ shared/libcsiphash.la \ - $(src_libsystemd_nm_la_libadd) \ + $(src_libnm_systemd_core_la_libadd) \ $(NULL) $(src_tests_test_systemd_OBJECTS): $(libnm_core_lib_h_pub_mkenums) diff --git a/shared/meson.build b/shared/meson.build index 753c6fb25f..76f09ee8c0 100644 --- a/shared/meson.build +++ b/shared/meson.build @@ -146,3 +146,64 @@ test( test_script, args: test_args + [test_shared_general.full_path()] ) + +############################################################################### + +libnm_systemd_shared = static_library( + 'nm-systemd-shared', + sources: files( + 'systemd/src/basic/alloc-util.c', + 'systemd/src/basic/escape.c', + 'systemd/src/basic/env-file.c', + 'systemd/src/basic/env-util.c', + 'systemd/src/basic/ether-addr-util.c', + 'systemd/src/basic/extract-word.c', + 'systemd/src/basic/fd-util.c', + 'systemd/src/basic/fileio.c', + 'systemd/src/basic/fs-util.c', + 'systemd/src/basic/hash-funcs.c', + 'systemd/src/basic/hashmap.c', + 'systemd/src/basic/hexdecoct.c', + 'systemd/src/basic/hostname-util.c', + 'systemd/src/basic/in-addr-util.c', + 'systemd/src/basic/io-util.c', + 'systemd/src/basic/mempool.c', + 'systemd/src/basic/parse-util.c', + 'systemd/src/basic/path-util.c', + 'systemd/src/basic/prioq.c', + 'systemd/src/basic/process-util.c', + 'systemd/src/basic/random-util.c', + 'systemd/src/basic/socket-util.c', + 'systemd/src/basic/stat-util.c', + 'systemd/src/basic/string-table.c', + 'systemd/src/basic/string-util.c', + 'systemd/src/basic/strv.c', + 'systemd/src/basic/time-util.c', + 'systemd/src/basic/tmpfile-util.c', + 'systemd/src/basic/utf8.c', + 'systemd/src/basic/util.c', + 'systemd/nm-sd-utils-shared.c', + ), + include_directories: include_directories( + 'systemd/sd-adapt-shared', + 'systemd/src/basic', + ), + dependencies: shared_dep, + c_args: [ + '-DNETWORKMANAGER_COMPILATION=NM_NETWORKMANAGER_COMPILATION_SYSTEMD_SHARED', + '-DG_LOG_DOMAIN="libnm"', + ], +) + +libnm_systemd_shared_dep = declare_dependency( + include_directories: include_directories( + 'systemd/sd-adapt-shared', + 'systemd/src/basic', + ), + dependencies: [ + shared_dep, + ], + link_with: [ + libnm_systemd_shared, + ], +) diff --git a/shared/nm-default.h b/shared/nm-default.h index 35c6009ff9..c006f33d35 100644 --- a/shared/nm-default.h +++ b/shared/nm-default.h @@ -78,9 +78,14 @@ | NM_NETWORKMANAGER_COMPILATION_WITH_DAEMON \ ) +#define NM_NETWORKMANAGER_COMPILATION_SYSTEMD_SHARED ( 0 \ + | NM_NETWORKMANAGER_COMPILATION_WITH_GLIB \ + | NM_NETWORKMANAGER_COMPILATION_WITH_SYSTEMD \ + ) + #define NM_NETWORKMANAGER_COMPILATION_SYSTEMD ( 0 \ | NM_NETWORKMANAGER_COMPILATION_DAEMON \ - | NM_NETWORKMANAGER_COMPILATION_WITH_SYSTEMD \ + | NM_NETWORKMANAGER_COMPILATION_SYSTEMD_SHARED \ ) #define NM_NETWORKMANAGER_COMPILATION_GLIB ( 0 \ diff --git a/src/systemd/nm-sd-utils.c b/shared/systemd/nm-sd-utils-shared.c similarity index 74% rename from src/systemd/nm-sd-utils.c rename to shared/systemd/nm-sd-utils-shared.c index c6c4c12328..6c71702502 100644 --- a/src/systemd/nm-sd-utils.c +++ b/shared/systemd/nm-sd-utils-shared.c @@ -18,14 +18,11 @@ #include "nm-default.h" -#include "nm-sd-utils.h" +#include "nm-sd-utils-shared.h" -#include "nm-core-internal.h" - -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-shared.h" #include "path-util.h" -#include "sd-id128.h" /*****************************************************************************/ @@ -46,16 +43,3 @@ nm_sd_utils_path_startswith (const char *path, const char *prefix) { return path_startswith (path, prefix); } - -/*****************************************************************************/ - -NMUuid * -nm_sd_utils_id128_get_machine (NMUuid *out_uuid) -{ - g_assert (out_uuid); - - G_STATIC_ASSERT_EXPR (sizeof (*out_uuid) == sizeof (sd_id128_t)); - if (sd_id128_get_machine ((sd_id128_t *) out_uuid) < 0) - return NULL; - return out_uuid; -} diff --git a/src/systemd/nm-sd-utils.h b/shared/systemd/nm-sd-utils-shared.h similarity index 81% rename from src/systemd/nm-sd-utils.h rename to shared/systemd/nm-sd-utils-shared.h index 0af514eb84..3103b3c7c4 100644 --- a/src/systemd/nm-sd-utils.h +++ b/shared/systemd/nm-sd-utils-shared.h @@ -16,8 +16,8 @@ * Copyright (C) 2018 Red Hat, Inc. */ -#ifndef __NM_SD_UTILS_H__ -#define __NM_SD_UTILS_H__ +#ifndef __NM_SD_UTILS_SHARED_H__ +#define __NM_SD_UTILS_SHARED_H__ /*****************************************************************************/ @@ -29,10 +29,4 @@ const char *nm_sd_utils_path_startswith (const char *path, const char *prefix); /*****************************************************************************/ -struct _NMUuid; - -struct _NMUuid *nm_sd_utils_id128_get_machine (struct _NMUuid *out_uuid); - -/*****************************************************************************/ - -#endif /* __NM_SD_UTILS_H__ */ +#endif /* __NM_SD_UTILS_SHARED_H__ */ diff --git a/src/systemd/sd-adapt/architecture.h b/shared/systemd/sd-adapt-shared/architecture.h similarity index 100% rename from src/systemd/sd-adapt/architecture.h rename to shared/systemd/sd-adapt-shared/architecture.h diff --git a/src/systemd/sd-adapt/btrfs-util.h b/shared/systemd/sd-adapt-shared/btrfs-util.h similarity index 100% rename from src/systemd/sd-adapt/btrfs-util.h rename to shared/systemd/sd-adapt-shared/btrfs-util.h diff --git a/src/systemd/sd-adapt/build.h b/shared/systemd/sd-adapt-shared/build.h similarity index 100% rename from src/systemd/sd-adapt/build.h rename to shared/systemd/sd-adapt-shared/build.h diff --git a/src/systemd/sd-adapt/cgroup-util.h b/shared/systemd/sd-adapt-shared/cgroup-util.h similarity index 100% rename from src/systemd/sd-adapt/cgroup-util.h rename to shared/systemd/sd-adapt-shared/cgroup-util.h diff --git a/src/systemd/sd-adapt/copy.h b/shared/systemd/sd-adapt-shared/copy.h similarity index 100% rename from src/systemd/sd-adapt/copy.h rename to shared/systemd/sd-adapt-shared/copy.h diff --git a/src/systemd/sd-adapt/def.h b/shared/systemd/sd-adapt-shared/def.h similarity index 100% rename from src/systemd/sd-adapt/def.h rename to shared/systemd/sd-adapt-shared/def.h diff --git a/src/systemd/sd-adapt/device-nodes.h b/shared/systemd/sd-adapt-shared/device-nodes.h similarity index 100% rename from src/systemd/sd-adapt/device-nodes.h rename to shared/systemd/sd-adapt-shared/device-nodes.h diff --git a/src/systemd/sd-adapt/dirent-util.h b/shared/systemd/sd-adapt-shared/dirent-util.h similarity index 100% rename from src/systemd/sd-adapt/dirent-util.h rename to shared/systemd/sd-adapt-shared/dirent-util.h diff --git a/src/systemd/sd-adapt/errno-list.h b/shared/systemd/sd-adapt-shared/errno-list.h similarity index 100% rename from src/systemd/sd-adapt/errno-list.h rename to shared/systemd/sd-adapt-shared/errno-list.h diff --git a/src/systemd/sd-adapt/format-util.h b/shared/systemd/sd-adapt-shared/format-util.h similarity index 100% rename from src/systemd/sd-adapt/format-util.h rename to shared/systemd/sd-adapt-shared/format-util.h diff --git a/src/systemd/sd-adapt/glob-util.h b/shared/systemd/sd-adapt-shared/glob-util.h similarity index 100% rename from src/systemd/sd-adapt/glob-util.h rename to shared/systemd/sd-adapt-shared/glob-util.h diff --git a/src/systemd/sd-adapt/gunicode.h b/shared/systemd/sd-adapt-shared/gunicode.h similarity index 100% rename from src/systemd/sd-adapt/gunicode.h rename to shared/systemd/sd-adapt-shared/gunicode.h diff --git a/src/systemd/sd-adapt/ioprio.h b/shared/systemd/sd-adapt-shared/ioprio.h similarity index 100% rename from src/systemd/sd-adapt/ioprio.h rename to shared/systemd/sd-adapt-shared/ioprio.h diff --git a/src/systemd/sd-adapt/locale-util.h b/shared/systemd/sd-adapt-shared/locale-util.h similarity index 100% rename from src/systemd/sd-adapt/locale-util.h rename to shared/systemd/sd-adapt-shared/locale-util.h diff --git a/src/systemd/sd-adapt/memfd-util.h b/shared/systemd/sd-adapt-shared/memfd-util.h similarity index 100% rename from src/systemd/sd-adapt/memfd-util.h rename to shared/systemd/sd-adapt-shared/memfd-util.h diff --git a/src/systemd/sd-adapt/missing.h b/shared/systemd/sd-adapt-shared/missing.h similarity index 100% rename from src/systemd/sd-adapt/missing.h rename to shared/systemd/sd-adapt-shared/missing.h diff --git a/src/systemd/sd-adapt/missing_socket.h b/shared/systemd/sd-adapt-shared/missing_socket.h similarity index 100% rename from src/systemd/sd-adapt/missing_socket.h rename to shared/systemd/sd-adapt-shared/missing_socket.h diff --git a/src/systemd/sd-adapt/missing_syscall.h b/shared/systemd/sd-adapt-shared/missing_syscall.h similarity index 100% rename from src/systemd/sd-adapt/missing_syscall.h rename to shared/systemd/sd-adapt-shared/missing_syscall.h diff --git a/src/systemd/sd-adapt/missing_timerfd.h b/shared/systemd/sd-adapt-shared/missing_timerfd.h similarity index 100% rename from src/systemd/sd-adapt/missing_timerfd.h rename to shared/systemd/sd-adapt-shared/missing_timerfd.h diff --git a/src/systemd/sd-adapt/mkdir.h b/shared/systemd/sd-adapt-shared/mkdir.h similarity index 100% rename from src/systemd/sd-adapt/mkdir.h rename to shared/systemd/sd-adapt-shared/mkdir.h diff --git a/src/systemd/sd-adapt/nm-sd-adapt.h b/shared/systemd/sd-adapt-shared/nm-sd-adapt-shared.h similarity index 75% rename from src/systemd/sd-adapt/nm-sd-adapt.h rename to shared/systemd/sd-adapt-shared/nm-sd-adapt-shared.h index cd2d202590..905e45c0e1 100644 --- a/src/systemd/sd-adapt/nm-sd-adapt.h +++ b/shared/systemd/sd-adapt-shared/nm-sd-adapt-shared.h @@ -13,40 +13,17 @@ * with this program; if not, write to the Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. * - * Copyright (C) 2014 - 2015 Red Hat, Inc. + * Copyright (C) 2014 - 2018 Red Hat, Inc. */ -#ifndef NM_SD_ADAPT_H -#define NM_SD_ADAPT_H +#ifndef __NM_SD_ADAPT_BASIC_H__ +#define __NM_SD_ADAPT_BASIC_H__ #include "nm-default.h" -#include #include -#include -#include -#if defined(HAVE_DECL_REALLOCARRAY) && HAVE_DECL_REALLOCARRAY == 1 -#define HAVE_REALLOCARRAY 1 -#else -#define HAVE_REALLOCARRAY 0 -#endif - -#if defined(HAVE_DECL_EXPLICIT_BZERO) && HAVE_DECL_EXPLICIT_BZERO == 1 -#define HAVE_EXPLICIT_BZERO 1 -#else -#define HAVE_EXPLICIT_BZERO 0 -#endif - -#define ENABLE_DEBUG_HASHMAP 0 - -#ifndef HAVE_SYS_AUXV_H -#define HAVE_SYS_AUXV_H 0 -#endif - -/* we build with C11 and thus provides char32_t,char16_t. */ -#define HAVE_CHAR32_T 1 -#define HAVE_CHAR16_T 1 +#include "nm-utils/nm-logging-fwd.h" /*****************************************************************************/ @@ -77,7 +54,7 @@ _nm_log_get_max_level_realm (void) const int _nm_e = (error); \ const NMLogLevel _nm_l = _slog_level_to_nm ((level)); \ \ - if (nm_logging_enabled (_nm_l, LOGD_SYSTEMD)) { \ + if (_nm_log_enabled (_nm_l, LOGD_SYSTEMD)) { \ const char *_nm_location = strrchr ((""file), '/'); \ \ _nm_log_impl (_nm_location ? _nm_location + 1 : (""file), (line), (func), _nm_l, LOGD_SYSTEMD, _nm_e, NULL, NULL, ("%s"format), "libsystemd: ", ## __VA_ARGS__); \ @@ -104,6 +81,12 @@ G_STMT_START { \ (void) 0; \ }) +/*****************************************************************************/ + +#define VALGRIND 0 + +#define ENABLE_DEBUG_HASHMAP 0 + /***************************************************************************** * The remainder of the header is only enabled when building the systemd code * itself. @@ -111,39 +94,9 @@ G_STMT_START { \ #if (NETWORKMANAGER_COMPILATION) & NM_NETWORKMANAGER_COMPILATION_WITH_SYSTEMD -#include -#include -#include -#include -#include -#ifdef HAVE_SYS_AUXV_H -#include -#endif -#include #include #include -#include - -/* Missing in Linux 3.2.0, in Ubuntu 12.04 */ -#ifndef BPF_XOR -#define BPF_XOR 0xa0 -#endif - -#ifndef ETHERTYPE_LLDP -#define ETHERTYPE_LLDP 0x88cc -#endif - -#ifndef HAVE_SECURE_GETENV -# ifdef HAVE___SECURE_GETENV -# define secure_getenv __secure_getenv -# else -# error neither secure_getenv nor __secure_getenv is available -# endif -#endif - -#define VALGRIND 0 - static inline pid_t raw_getpid (void) { #if defined(__alpha__) @@ -153,37 +106,28 @@ raw_getpid (void) { #endif } -/*****************************************************************************/ - -static inline int -sd_notify (int unset_environment, const char *state) -{ - return 0; -} - -/* Can't include both net/if.h and linux/if.h; so have to define this here */ -#ifndef IF_NAMESIZE -#define IF_NAMESIZE 16 -#endif - -#ifndef IFNAMSIZ -#define IFNAMSIZ IF_NAMESIZE -#endif - -#ifndef MAX_HANDLE_SZ -#define MAX_HANDLE_SZ 128 -#endif - -#include "sd-id128.h" -#include "sparse-endian.h" -#include "async.h" -#include "util.h" - static inline pid_t gettid(void) { return (pid_t) syscall(SYS_gettid); } +/* we build with C11 and thus provides char32_t,char16_t. */ +#define HAVE_CHAR32_T 1 +#define HAVE_CHAR16_T 1 + +#if defined(HAVE_DECL_REALLOCARRAY) && HAVE_DECL_REALLOCARRAY == 1 +#define HAVE_REALLOCARRAY 1 +#else +#define HAVE_REALLOCARRAY 0 +#endif + +#if defined(HAVE_DECL_EXPLICIT_BZERO) && HAVE_DECL_EXPLICIT_BZERO == 1 +#define HAVE_EXPLICIT_BZERO 1 +#else +#define HAVE_EXPLICIT_BZERO 0 +#endif + #endif /* (NETWORKMANAGER_COMPILATION) & NM_NETWORKMANAGER_COMPILATION_WITH_SYSTEMD */ -#endif /* NM_SD_ADAPT_H */ +/*****************************************************************************/ +#endif /* __NM_SD_ADAPT_BASIC_H__ */ diff --git a/src/systemd/sd-adapt/procfs-util.h b/shared/systemd/sd-adapt-shared/procfs-util.h similarity index 100% rename from src/systemd/sd-adapt/procfs-util.h rename to shared/systemd/sd-adapt-shared/procfs-util.h diff --git a/src/systemd/sd-adapt/raw-clone.h b/shared/systemd/sd-adapt-shared/raw-clone.h similarity index 100% rename from src/systemd/sd-adapt/raw-clone.h rename to shared/systemd/sd-adapt-shared/raw-clone.h diff --git a/src/systemd/sd-adapt/rlimit-util.h b/shared/systemd/sd-adapt-shared/rlimit-util.h similarity index 100% rename from src/systemd/sd-adapt/rlimit-util.h rename to shared/systemd/sd-adapt-shared/rlimit-util.h diff --git a/src/systemd/sd-adapt/terminal-util.h b/shared/systemd/sd-adapt-shared/terminal-util.h similarity index 100% rename from src/systemd/sd-adapt/terminal-util.h rename to shared/systemd/sd-adapt-shared/terminal-util.h diff --git a/src/systemd/sd-adapt/unaligned.h b/shared/systemd/sd-adapt-shared/unaligned.h similarity index 100% rename from src/systemd/sd-adapt/unaligned.h rename to shared/systemd/sd-adapt-shared/unaligned.h diff --git a/src/systemd/sd-adapt/user-util.h b/shared/systemd/sd-adapt-shared/user-util.h similarity index 100% rename from src/systemd/sd-adapt/user-util.h rename to shared/systemd/sd-adapt-shared/user-util.h diff --git a/src/systemd/sd-adapt/virt.h b/shared/systemd/sd-adapt-shared/virt.h similarity index 100% rename from src/systemd/sd-adapt/virt.h rename to shared/systemd/sd-adapt-shared/virt.h diff --git a/src/systemd/src/basic/alloc-util.c b/shared/systemd/src/basic/alloc-util.c similarity index 98% rename from src/systemd/src/basic/alloc-util.c rename to shared/systemd/src/basic/alloc-util.c index 2e1c7ef61e..d23624d8ff 100644 --- a/src/systemd/src/basic/alloc-util.c +++ b/shared/systemd/src/basic/alloc-util.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-shared.h" #include #include diff --git a/src/systemd/src/basic/alloc-util.h b/shared/systemd/src/basic/alloc-util.h similarity index 100% rename from src/systemd/src/basic/alloc-util.h rename to shared/systemd/src/basic/alloc-util.h diff --git a/src/systemd/src/basic/async.h b/shared/systemd/src/basic/async.h similarity index 100% rename from src/systemd/src/basic/async.h rename to shared/systemd/src/basic/async.h diff --git a/src/systemd/src/basic/env-file.c b/shared/systemd/src/basic/env-file.c similarity index 99% rename from src/systemd/src/basic/env-file.c rename to shared/systemd/src/basic/env-file.c index 40051c312e..beafd8c207 100644 --- a/src/systemd/src/basic/env-file.c +++ b/shared/systemd/src/basic/env-file.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-shared.h" #include diff --git a/src/systemd/src/basic/env-file.h b/shared/systemd/src/basic/env-file.h similarity index 100% rename from src/systemd/src/basic/env-file.h rename to shared/systemd/src/basic/env-file.h diff --git a/src/systemd/src/basic/env-util.c b/shared/systemd/src/basic/env-util.c similarity index 99% rename from src/systemd/src/basic/env-util.c rename to shared/systemd/src/basic/env-util.c index 1cd48a27e9..fd9eedc533 100644 --- a/src/systemd/src/basic/env-util.c +++ b/shared/systemd/src/basic/env-util.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-shared.h" #include #include diff --git a/src/systemd/src/basic/env-util.h b/shared/systemd/src/basic/env-util.h similarity index 100% rename from src/systemd/src/basic/env-util.h rename to shared/systemd/src/basic/env-util.h diff --git a/src/systemd/src/basic/escape.c b/shared/systemd/src/basic/escape.c similarity index 99% rename from src/systemd/src/basic/escape.c rename to shared/systemd/src/basic/escape.c index f430f2a99c..8f7a1b33b9 100644 --- a/src/systemd/src/basic/escape.c +++ b/shared/systemd/src/basic/escape.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-shared.h" #include #include diff --git a/src/systemd/src/basic/escape.h b/shared/systemd/src/basic/escape.h similarity index 100% rename from src/systemd/src/basic/escape.h rename to shared/systemd/src/basic/escape.h diff --git a/src/systemd/src/basic/ether-addr-util.c b/shared/systemd/src/basic/ether-addr-util.c similarity index 99% rename from src/systemd/src/basic/ether-addr-util.c rename to shared/systemd/src/basic/ether-addr-util.c index 602bbae059..4878a3d2ac 100644 --- a/src/systemd/src/basic/ether-addr-util.c +++ b/shared/systemd/src/basic/ether-addr-util.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-shared.h" #include #include diff --git a/src/systemd/src/basic/ether-addr-util.h b/shared/systemd/src/basic/ether-addr-util.h similarity index 100% rename from src/systemd/src/basic/ether-addr-util.h rename to shared/systemd/src/basic/ether-addr-util.h diff --git a/src/systemd/src/basic/extract-word.c b/shared/systemd/src/basic/extract-word.c similarity index 99% rename from src/systemd/src/basic/extract-word.c rename to shared/systemd/src/basic/extract-word.c index 404fe61558..782c868bc1 100644 --- a/src/systemd/src/basic/extract-word.c +++ b/shared/systemd/src/basic/extract-word.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-shared.h" #include #include diff --git a/src/systemd/src/basic/extract-word.h b/shared/systemd/src/basic/extract-word.h similarity index 100% rename from src/systemd/src/basic/extract-word.h rename to shared/systemd/src/basic/extract-word.h diff --git a/src/systemd/src/basic/fd-util.c b/shared/systemd/src/basic/fd-util.c similarity index 99% rename from src/systemd/src/basic/fd-util.c rename to shared/systemd/src/basic/fd-util.c index a242b739cd..219abd808c 100644 --- a/src/systemd/src/basic/fd-util.c +++ b/shared/systemd/src/basic/fd-util.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-shared.h" #include #include diff --git a/src/systemd/src/basic/fd-util.h b/shared/systemd/src/basic/fd-util.h similarity index 100% rename from src/systemd/src/basic/fd-util.h rename to shared/systemd/src/basic/fd-util.h diff --git a/src/systemd/src/basic/fileio.c b/shared/systemd/src/basic/fileio.c similarity index 99% rename from src/systemd/src/basic/fileio.c rename to shared/systemd/src/basic/fileio.c index 93b8b2439b..b172507b79 100644 --- a/src/systemd/src/basic/fileio.c +++ b/shared/systemd/src/basic/fileio.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-shared.h" #include #include diff --git a/src/systemd/src/basic/fileio.h b/shared/systemd/src/basic/fileio.h similarity index 100% rename from src/systemd/src/basic/fileio.h rename to shared/systemd/src/basic/fileio.h diff --git a/src/systemd/src/basic/fs-util.c b/shared/systemd/src/basic/fs-util.c similarity index 99% rename from src/systemd/src/basic/fs-util.c rename to shared/systemd/src/basic/fs-util.c index 767e5e078f..4b2341390f 100644 --- a/src/systemd/src/basic/fs-util.c +++ b/shared/systemd/src/basic/fs-util.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-shared.h" #include #include diff --git a/src/systemd/src/basic/fs-util.h b/shared/systemd/src/basic/fs-util.h similarity index 100% rename from src/systemd/src/basic/fs-util.h rename to shared/systemd/src/basic/fs-util.h diff --git a/src/systemd/src/basic/hash-funcs.c b/shared/systemd/src/basic/hash-funcs.c similarity index 98% rename from src/systemd/src/basic/hash-funcs.c rename to shared/systemd/src/basic/hash-funcs.c index 33264859ed..ec4f1de619 100644 --- a/src/systemd/src/basic/hash-funcs.c +++ b/shared/systemd/src/basic/hash-funcs.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-shared.h" #include diff --git a/src/systemd/src/basic/hash-funcs.h b/shared/systemd/src/basic/hash-funcs.h similarity index 100% rename from src/systemd/src/basic/hash-funcs.h rename to shared/systemd/src/basic/hash-funcs.h diff --git a/src/systemd/src/basic/hashmap.c b/shared/systemd/src/basic/hashmap.c similarity index 99% rename from src/systemd/src/basic/hashmap.c rename to shared/systemd/src/basic/hashmap.c index e31ffaca5e..09303c6f63 100644 --- a/src/systemd/src/basic/hashmap.c +++ b/shared/systemd/src/basic/hashmap.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-shared.h" #include #include diff --git a/src/systemd/src/basic/hashmap.h b/shared/systemd/src/basic/hashmap.h similarity index 100% rename from src/systemd/src/basic/hashmap.h rename to shared/systemd/src/basic/hashmap.h diff --git a/src/systemd/src/basic/hexdecoct.c b/shared/systemd/src/basic/hexdecoct.c similarity index 99% rename from src/systemd/src/basic/hexdecoct.c rename to shared/systemd/src/basic/hexdecoct.c index 9267af6750..6a9869bcc4 100644 --- a/src/systemd/src/basic/hexdecoct.c +++ b/shared/systemd/src/basic/hexdecoct.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-shared.h" #include #include diff --git a/src/systemd/src/basic/hexdecoct.h b/shared/systemd/src/basic/hexdecoct.h similarity index 100% rename from src/systemd/src/basic/hexdecoct.h rename to shared/systemd/src/basic/hexdecoct.h diff --git a/src/systemd/src/basic/hostname-util.c b/shared/systemd/src/basic/hostname-util.c similarity index 99% rename from src/systemd/src/basic/hostname-util.c rename to shared/systemd/src/basic/hostname-util.c index 6a3d4afb46..60a94b9686 100644 --- a/src/systemd/src/basic/hostname-util.c +++ b/shared/systemd/src/basic/hostname-util.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-shared.h" #include #include diff --git a/src/systemd/src/basic/hostname-util.h b/shared/systemd/src/basic/hostname-util.h similarity index 100% rename from src/systemd/src/basic/hostname-util.h rename to shared/systemd/src/basic/hostname-util.h diff --git a/src/systemd/src/basic/in-addr-util.c b/shared/systemd/src/basic/in-addr-util.c similarity index 99% rename from src/systemd/src/basic/in-addr-util.c rename to shared/systemd/src/basic/in-addr-util.c index 0f2538e213..d2cc560620 100644 --- a/src/systemd/src/basic/in-addr-util.c +++ b/shared/systemd/src/basic/in-addr-util.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-shared.h" #include #include diff --git a/src/systemd/src/basic/in-addr-util.h b/shared/systemd/src/basic/in-addr-util.h similarity index 100% rename from src/systemd/src/basic/in-addr-util.h rename to shared/systemd/src/basic/in-addr-util.h diff --git a/src/systemd/src/basic/io-util.c b/shared/systemd/src/basic/io-util.c similarity index 99% rename from src/systemd/src/basic/io-util.c rename to shared/systemd/src/basic/io-util.c index 6f46c944ea..f7c2591548 100644 --- a/src/systemd/src/basic/io-util.c +++ b/shared/systemd/src/basic/io-util.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-shared.h" #include #include diff --git a/src/systemd/src/basic/io-util.h b/shared/systemd/src/basic/io-util.h similarity index 100% rename from src/systemd/src/basic/io-util.h rename to shared/systemd/src/basic/io-util.h diff --git a/src/systemd/src/basic/list.h b/shared/systemd/src/basic/list.h similarity index 100% rename from src/systemd/src/basic/list.h rename to shared/systemd/src/basic/list.h diff --git a/src/systemd/src/basic/log.h b/shared/systemd/src/basic/log.h similarity index 99% rename from src/systemd/src/basic/log.h rename to shared/systemd/src/basic/log.h index 28b07de334..364b8a49ec 100644 --- a/src/systemd/src/basic/log.h +++ b/shared/systemd/src/basic/log.h @@ -183,6 +183,7 @@ _noreturn_ void log_assert_failed_realm( #define log_assert_failed(text, ...) \ log_assert_failed_realm(LOG_REALM, (text), __VA_ARGS__) + _noreturn_ void log_assert_failed_unreachable_realm( LogRealm realm, const char *text, diff --git a/src/systemd/src/basic/macro.h b/shared/systemd/src/basic/macro.h similarity index 100% rename from src/systemd/src/basic/macro.h rename to shared/systemd/src/basic/macro.h diff --git a/src/systemd/src/basic/mempool.c b/shared/systemd/src/basic/mempool.c similarity index 98% rename from src/systemd/src/basic/mempool.c rename to shared/systemd/src/basic/mempool.c index bae4f2fcd6..0fa51fba9d 100644 --- a/src/systemd/src/basic/mempool.c +++ b/shared/systemd/src/basic/mempool.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-shared.h" #include #include diff --git a/src/systemd/src/basic/mempool.h b/shared/systemd/src/basic/mempool.h similarity index 100% rename from src/systemd/src/basic/mempool.h rename to shared/systemd/src/basic/mempool.h diff --git a/src/systemd/src/basic/missing_type.h b/shared/systemd/src/basic/missing_type.h similarity index 100% rename from src/systemd/src/basic/missing_type.h rename to shared/systemd/src/basic/missing_type.h diff --git a/src/systemd/src/basic/parse-util.c b/shared/systemd/src/basic/parse-util.c similarity index 99% rename from src/systemd/src/basic/parse-util.c rename to shared/systemd/src/basic/parse-util.c index 1f0b711113..02ef426f68 100644 --- a/src/systemd/src/basic/parse-util.c +++ b/shared/systemd/src/basic/parse-util.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-shared.h" #include #include diff --git a/src/systemd/src/basic/parse-util.h b/shared/systemd/src/basic/parse-util.h similarity index 100% rename from src/systemd/src/basic/parse-util.h rename to shared/systemd/src/basic/parse-util.h diff --git a/src/systemd/src/basic/path-util.c b/shared/systemd/src/basic/path-util.c similarity index 99% rename from src/systemd/src/basic/path-util.c rename to shared/systemd/src/basic/path-util.c index 1446ecdc85..6c5e725d16 100644 --- a/src/systemd/src/basic/path-util.c +++ b/shared/systemd/src/basic/path-util.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-shared.h" #include #include diff --git a/src/systemd/src/basic/path-util.h b/shared/systemd/src/basic/path-util.h similarity index 100% rename from src/systemd/src/basic/path-util.h rename to shared/systemd/src/basic/path-util.h diff --git a/src/systemd/src/basic/prioq.c b/shared/systemd/src/basic/prioq.c similarity index 99% rename from src/systemd/src/basic/prioq.c rename to shared/systemd/src/basic/prioq.c index 14e29c52e4..b218f37d9c 100644 --- a/src/systemd/src/basic/prioq.c +++ b/shared/systemd/src/basic/prioq.c @@ -10,7 +10,7 @@ * The underlying algorithm used in this implementation is a Heap. */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-shared.h" #include #include diff --git a/src/systemd/src/basic/prioq.h b/shared/systemd/src/basic/prioq.h similarity index 100% rename from src/systemd/src/basic/prioq.h rename to shared/systemd/src/basic/prioq.h diff --git a/src/systemd/src/basic/process-util.c b/shared/systemd/src/basic/process-util.c similarity index 99% rename from src/systemd/src/basic/process-util.c rename to shared/systemd/src/basic/process-util.c index bf05b2e8ef..be7911a3ac 100644 --- a/src/systemd/src/basic/process-util.c +++ b/shared/systemd/src/basic/process-util.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-shared.h" #include #include diff --git a/src/systemd/src/basic/process-util.h b/shared/systemd/src/basic/process-util.h similarity index 100% rename from src/systemd/src/basic/process-util.h rename to shared/systemd/src/basic/process-util.h diff --git a/src/systemd/src/basic/random-util.c b/shared/systemd/src/basic/random-util.c similarity index 99% rename from src/systemd/src/basic/random-util.c rename to shared/systemd/src/basic/random-util.c index 39ca85eebb..7c670e591a 100644 --- a/src/systemd/src/basic/random-util.c +++ b/shared/systemd/src/basic/random-util.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-shared.h" #if defined(__i386__) || defined(__x86_64__) #include diff --git a/src/systemd/src/basic/random-util.h b/shared/systemd/src/basic/random-util.h similarity index 100% rename from src/systemd/src/basic/random-util.h rename to shared/systemd/src/basic/random-util.h diff --git a/src/systemd/src/basic/refcnt.h b/shared/systemd/src/basic/refcnt.h similarity index 100% rename from src/systemd/src/basic/refcnt.h rename to shared/systemd/src/basic/refcnt.h diff --git a/src/systemd/src/basic/set.h b/shared/systemd/src/basic/set.h similarity index 100% rename from src/systemd/src/basic/set.h rename to shared/systemd/src/basic/set.h diff --git a/src/systemd/src/basic/signal-util.h b/shared/systemd/src/basic/signal-util.h similarity index 100% rename from src/systemd/src/basic/signal-util.h rename to shared/systemd/src/basic/signal-util.h diff --git a/src/systemd/src/basic/siphash24.h b/shared/systemd/src/basic/siphash24.h similarity index 100% rename from src/systemd/src/basic/siphash24.h rename to shared/systemd/src/basic/siphash24.h diff --git a/src/systemd/src/basic/socket-util.c b/shared/systemd/src/basic/socket-util.c similarity index 99% rename from src/systemd/src/basic/socket-util.c rename to shared/systemd/src/basic/socket-util.c index 7fcedf3714..68a62f85ff 100644 --- a/src/systemd/src/basic/socket-util.c +++ b/shared/systemd/src/basic/socket-util.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-shared.h" #include #include diff --git a/src/systemd/src/basic/socket-util.h b/shared/systemd/src/basic/socket-util.h similarity index 100% rename from src/systemd/src/basic/socket-util.h rename to shared/systemd/src/basic/socket-util.h diff --git a/src/systemd/src/basic/sparse-endian.h b/shared/systemd/src/basic/sparse-endian.h similarity index 100% rename from src/systemd/src/basic/sparse-endian.h rename to shared/systemd/src/basic/sparse-endian.h diff --git a/src/systemd/src/basic/stat-util.c b/shared/systemd/src/basic/stat-util.c similarity index 99% rename from src/systemd/src/basic/stat-util.c rename to shared/systemd/src/basic/stat-util.c index e77f40aee5..8843aba85c 100644 --- a/src/systemd/src/basic/stat-util.c +++ b/shared/systemd/src/basic/stat-util.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-shared.h" #include #include diff --git a/src/systemd/src/basic/stat-util.h b/shared/systemd/src/basic/stat-util.h similarity index 100% rename from src/systemd/src/basic/stat-util.h rename to shared/systemd/src/basic/stat-util.h diff --git a/src/systemd/src/basic/stdio-util.h b/shared/systemd/src/basic/stdio-util.h similarity index 100% rename from src/systemd/src/basic/stdio-util.h rename to shared/systemd/src/basic/stdio-util.h diff --git a/src/systemd/src/basic/string-table.c b/shared/systemd/src/basic/string-table.c similarity index 92% rename from src/systemd/src/basic/string-table.c rename to shared/systemd/src/basic/string-table.c index 94412ed2b4..14ae630804 100644 --- a/src/systemd/src/basic/string-table.c +++ b/shared/systemd/src/basic/string-table.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-shared.h" #include "string-table.h" #include "string-util.h" diff --git a/src/systemd/src/basic/string-table.h b/shared/systemd/src/basic/string-table.h similarity index 100% rename from src/systemd/src/basic/string-table.h rename to shared/systemd/src/basic/string-table.h diff --git a/src/systemd/src/basic/string-util.c b/shared/systemd/src/basic/string-util.c similarity index 99% rename from src/systemd/src/basic/string-util.c rename to shared/systemd/src/basic/string-util.c index 1651239d8c..de35c18092 100644 --- a/src/systemd/src/basic/string-util.c +++ b/shared/systemd/src/basic/string-util.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-shared.h" #include #include diff --git a/src/systemd/src/basic/string-util.h b/shared/systemd/src/basic/string-util.h similarity index 100% rename from src/systemd/src/basic/string-util.h rename to shared/systemd/src/basic/string-util.h diff --git a/src/systemd/src/basic/strv.c b/shared/systemd/src/basic/strv.c similarity index 99% rename from src/systemd/src/basic/strv.c rename to shared/systemd/src/basic/strv.c index b679624f0c..1615c9baf8 100644 --- a/src/systemd/src/basic/strv.c +++ b/shared/systemd/src/basic/strv.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-shared.h" #include #include diff --git a/src/systemd/src/basic/strv.h b/shared/systemd/src/basic/strv.h similarity index 100% rename from src/systemd/src/basic/strv.h rename to shared/systemd/src/basic/strv.h diff --git a/src/systemd/src/basic/time-util.c b/shared/systemd/src/basic/time-util.c similarity index 99% rename from src/systemd/src/basic/time-util.c rename to shared/systemd/src/basic/time-util.c index a2f616d148..0f00c4a772 100644 --- a/src/systemd/src/basic/time-util.c +++ b/shared/systemd/src/basic/time-util.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-shared.h" #include #include @@ -26,7 +26,9 @@ #include "parse-util.h" #include "path-util.h" #include "process-util.h" +#if 0 /* NM_IGNORED */ #include "serialize.h" +#endif /* NM_IGNORED */ #include "stat-util.h" #include "string-util.h" #include "strv.h" diff --git a/src/systemd/src/basic/time-util.h b/shared/systemd/src/basic/time-util.h similarity index 100% rename from src/systemd/src/basic/time-util.h rename to shared/systemd/src/basic/time-util.h diff --git a/src/systemd/src/basic/tmpfile-util.c b/shared/systemd/src/basic/tmpfile-util.c similarity index 99% rename from src/systemd/src/basic/tmpfile-util.c rename to shared/systemd/src/basic/tmpfile-util.c index b40da5dc8d..06e325f089 100644 --- a/src/systemd/src/basic/tmpfile-util.c +++ b/shared/systemd/src/basic/tmpfile-util.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-shared.h" #include diff --git a/src/systemd/src/basic/tmpfile-util.h b/shared/systemd/src/basic/tmpfile-util.h similarity index 100% rename from src/systemd/src/basic/tmpfile-util.h rename to shared/systemd/src/basic/tmpfile-util.h diff --git a/src/systemd/src/basic/umask-util.h b/shared/systemd/src/basic/umask-util.h similarity index 100% rename from src/systemd/src/basic/umask-util.h rename to shared/systemd/src/basic/umask-util.h diff --git a/src/systemd/src/basic/utf8.c b/shared/systemd/src/basic/utf8.c similarity index 99% rename from src/systemd/src/basic/utf8.c rename to shared/systemd/src/basic/utf8.c index 25f556d9dc..e9958c9179 100644 --- a/src/systemd/src/basic/utf8.c +++ b/shared/systemd/src/basic/utf8.c @@ -23,7 +23,7 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-shared.h" #include #include diff --git a/src/systemd/src/basic/utf8.h b/shared/systemd/src/basic/utf8.h similarity index 100% rename from src/systemd/src/basic/utf8.h rename to shared/systemd/src/basic/utf8.h diff --git a/src/systemd/src/basic/util.c b/shared/systemd/src/basic/util.c similarity index 99% rename from src/systemd/src/basic/util.c rename to shared/systemd/src/basic/util.c index 382e95a072..50986cfb95 100644 --- a/src/systemd/src/basic/util.c +++ b/shared/systemd/src/basic/util.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-shared.h" #include #include diff --git a/src/systemd/src/basic/util.h b/shared/systemd/src/basic/util.h similarity index 100% rename from src/systemd/src/basic/util.h rename to shared/systemd/src/basic/util.h diff --git a/src/NetworkManagerUtils.c b/src/NetworkManagerUtils.c index b3f2a70ba0..fc0c5b8d3b 100644 --- a/src/NetworkManagerUtils.c +++ b/src/NetworkManagerUtils.c @@ -34,7 +34,7 @@ #include "platform/nm-platform.h" #include "nm-auth-utils.h" -#include "systemd/nm-sd-utils.h" +#include "systemd/nm-sd-utils-shared.h" /*****************************************************************************/ diff --git a/src/meson.build b/src/meson.build index ec1c4241c1..ff2276e3f8 100644 --- a/src/meson.build +++ b/src/meson.build @@ -176,7 +176,11 @@ libnetwork_manager = static_library( sources: sources, dependencies: nm_deps, c_args: cflags, - link_with: [libnetwork_manager_base, libsystemd_nm], + link_with: [ + libnetwork_manager_base, + libnm_systemd_core, + libnm_systemd_shared, + ], ) deps = [ @@ -193,7 +197,11 @@ executable( name + '.c', dependencies: deps, c_args: cflags, - link_with: [libnetwork_manager_base, libsystemd_nm], + link_with: [ + libnetwork_manager_base, + libnm_systemd_core, + libnm_systemd_shared, + ], link_args: ldflags_linker_script_binary, link_depends: linker_script_binary, install: true, diff --git a/src/systemd/meson.build b/src/systemd/meson.build index adeeb6800b..7619783490 100644 --- a/src/systemd/meson.build +++ b/src/systemd/meson.build @@ -1,77 +1,47 @@ -sources = files( - 'sd-adapt/nm-sd-adapt.c', - 'src/basic/alloc-util.c', - 'src/basic/escape.c', - 'src/basic/env-file.c', - 'src/basic/env-util.c', - 'src/basic/ether-addr-util.c', - 'src/basic/extract-word.c', - 'src/basic/fd-util.c', - 'src/basic/fileio.c', - 'src/basic/fs-util.c', - 'src/basic/hash-funcs.c', - 'src/basic/hashmap.c', - 'src/basic/hexdecoct.c', - 'src/basic/hostname-util.c', - 'src/basic/in-addr-util.c', - 'src/basic/io-util.c', - 'src/basic/mempool.c', - 'src/basic/parse-util.c', - 'src/basic/path-util.c', - 'src/basic/prioq.c', - 'src/basic/process-util.c', - 'src/basic/random-util.c', - 'src/basic/socket-util.c', - 'src/basic/stat-util.c', - 'src/basic/string-table.c', - 'src/basic/string-util.c', - 'src/basic/strv.c', - 'src/basic/time-util.c', - 'src/basic/tmpfile-util.c', - 'src/basic/utf8.c', - 'src/basic/util.c', - 'src/libsystemd-network/arp-util.c', - 'src/libsystemd-network/dhcp-identifier.c', - 'src/libsystemd-network/dhcp-network.c', - 'src/libsystemd-network/dhcp-option.c', - 'src/libsystemd-network/dhcp-packet.c', - 'src/libsystemd-network/dhcp6-network.c', - 'src/libsystemd-network/dhcp6-option.c', - 'src/libsystemd-network/lldp-neighbor.c', - 'src/libsystemd-network/lldp-network.c', - 'src/libsystemd-network/network-internal.c', - 'src/libsystemd-network/sd-dhcp-client.c', - 'src/libsystemd-network/sd-dhcp-lease.c', - 'src/libsystemd-network/sd-dhcp6-client.c', - 'src/libsystemd-network/sd-dhcp6-lease.c', - 'src/libsystemd-network/sd-ipv4acd.c', - 'src/libsystemd-network/sd-ipv4ll.c', - 'src/libsystemd-network/sd-lldp.c', - 'src/libsystemd/sd-event/event-util.c', - 'src/libsystemd/sd-event/sd-event.c', - 'src/libsystemd/sd-id128/id128-util.c', - 'src/libsystemd/sd-id128/sd-id128.c', - 'src/shared/dns-domain.c', - 'nm-sd.c', - 'nm-sd-utils.c', -) - -incs = [ - src_inc, - include_directories( - 'sd-adapt', - 'src/basic', - 'src/libsystemd-network', - 'src/libsystemd/sd-event', - 'src/shared', - 'src/systemd', - ) -] - -libsystemd_nm = static_library( - 'systemd-nm', - sources: sources, - include_directories: incs, - dependencies: nm_core_dep, - c_args: '-DNETWORKMANAGER_COMPILATION=NM_NETWORKMANAGER_COMPILATION_SYSTEMD', +libnm_systemd_core = static_library( + 'nm-systemd-core', + sources: files( + 'sd-adapt-core/nm-sd-adapt-core.c', + 'src/libsystemd-network/arp-util.c', + 'src/libsystemd-network/dhcp-identifier.c', + 'src/libsystemd-network/dhcp-network.c', + 'src/libsystemd-network/dhcp-option.c', + 'src/libsystemd-network/dhcp-packet.c', + 'src/libsystemd-network/dhcp6-network.c', + 'src/libsystemd-network/dhcp6-option.c', + 'src/libsystemd-network/lldp-neighbor.c', + 'src/libsystemd-network/lldp-network.c', + 'src/libsystemd-network/network-internal.c', + 'src/libsystemd-network/sd-dhcp-client.c', + 'src/libsystemd-network/sd-dhcp-lease.c', + 'src/libsystemd-network/sd-dhcp6-client.c', + 'src/libsystemd-network/sd-dhcp6-lease.c', + 'src/libsystemd-network/sd-ipv4acd.c', + 'src/libsystemd-network/sd-ipv4ll.c', + 'src/libsystemd-network/sd-lldp.c', + 'src/libsystemd/sd-event/event-util.c', + 'src/libsystemd/sd-event/sd-event.c', + 'src/libsystemd/sd-id128/id128-util.c', + 'src/libsystemd/sd-id128/sd-id128.c', + 'src/shared/dns-domain.c', + 'nm-sd.c', + 'nm-sd-utils-core.c', + ), + include_directories: [ + src_inc, + include_directories( + 'sd-adapt-core', + 'src/libsystemd-network', + 'src/libsystemd/sd-event', + 'src/shared', + 'src/systemd', + ) + ], + dependencies: [ + libnm_systemd_shared_dep, + nm_core_dep, + ], + c_args: [ + '-DNETWORKMANAGER_COMPILATION=NM_NETWORKMANAGER_COMPILATION_SYSTEMD', + ], ) diff --git a/src/systemd/nm-sd-utils-core.c b/src/systemd/nm-sd-utils-core.c new file mode 100644 index 0000000000..425607891c --- /dev/null +++ b/src/systemd/nm-sd-utils-core.c @@ -0,0 +1,40 @@ +/* This library 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 of the License, or (at your option) any later version. + * + * This library 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 this library; if not, write to the + * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301 USA. + * + * Copyright (C) 2018 Red Hat, Inc. + */ + +#include "nm-default.h" + +#include "nm-sd-utils-core.h" + +#include "nm-core-internal.h" + +#include "nm-sd-adapt-core.h" + +#include "sd-id128.h" + +/*****************************************************************************/ + +NMUuid * +nm_sd_utils_id128_get_machine (NMUuid *out_uuid) +{ + g_assert (out_uuid); + + G_STATIC_ASSERT_EXPR (sizeof (*out_uuid) == sizeof (sd_id128_t)); + if (sd_id128_get_machine ((sd_id128_t *) out_uuid) < 0) + return NULL; + return out_uuid; +} diff --git a/src/systemd/nm-sd-utils-core.h b/src/systemd/nm-sd-utils-core.h new file mode 100644 index 0000000000..a7b092b320 --- /dev/null +++ b/src/systemd/nm-sd-utils-core.h @@ -0,0 +1,30 @@ +/* This library 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 of the License, or (at your option) any later version. + * + * This library 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 this library; if not, write to the + * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301 USA. + * + * Copyright (C) 2018 Red Hat, Inc. + */ + +#ifndef __NM_SD_UTILS_CORE_H__ +#define __NM_SD_UTILS_CORE_H__ + +/*****************************************************************************/ + +struct _NMUuid; + +struct _NMUuid *nm_sd_utils_id128_get_machine (struct _NMUuid *out_uuid); + +/*****************************************************************************/ + +#endif /* __NM_SD_UTILS_CORE_H__ */ diff --git a/src/systemd/nm-sd.c b/src/systemd/nm-sd.c index 44867ada4f..4009c61773 100644 --- a/src/systemd/nm-sd.c +++ b/src/systemd/nm-sd.c @@ -139,7 +139,7 @@ const bool mempool_use_allowed = true; /* ensure that defines in nm-sd.h correspond to the internal defines. */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-core.h" #include "dhcp-lease-internal.h" /*****************************************************************************/ diff --git a/src/systemd/sd-adapt/condition.h b/src/systemd/sd-adapt-core/condition.h similarity index 100% rename from src/systemd/sd-adapt/condition.h rename to src/systemd/sd-adapt-core/condition.h diff --git a/src/systemd/sd-adapt/conf-parser.h b/src/systemd/sd-adapt-core/conf-parser.h similarity index 100% rename from src/systemd/sd-adapt/conf-parser.h rename to src/systemd/sd-adapt-core/conf-parser.h diff --git a/src/systemd/sd-adapt/khash.h b/src/systemd/sd-adapt-core/khash.h similarity index 100% rename from src/systemd/sd-adapt/khash.h rename to src/systemd/sd-adapt-core/khash.h diff --git a/src/systemd/sd-adapt/nm-sd-adapt.c b/src/systemd/sd-adapt-core/nm-sd-adapt-core.c similarity index 97% rename from src/systemd/sd-adapt/nm-sd-adapt.c rename to src/systemd/sd-adapt-core/nm-sd-adapt-core.c index 4e3082762d..d7ed687e46 100644 --- a/src/systemd/sd-adapt/nm-sd-adapt.c +++ b/src/systemd/sd-adapt-core/nm-sd-adapt-core.c @@ -18,7 +18,7 @@ #include "nm-default.h" -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-core.h" #include "fd-util.h" diff --git a/src/systemd/sd-adapt-core/nm-sd-adapt-core.h b/src/systemd/sd-adapt-core/nm-sd-adapt-core.h new file mode 100644 index 0000000000..8c07c53a4d --- /dev/null +++ b/src/systemd/sd-adapt-core/nm-sd-adapt-core.h @@ -0,0 +1,101 @@ +/* This program 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 of the License, or (at your option) any later version. + * + * This library 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 this library; if not, write to the + * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301 USA. + * + * Copyright (C) 2014 - 2018 Red Hat, Inc. + */ + +#ifndef __NM_SD_ADAPT_CORE_H__ +#define __NM_SD_ADAPT_CORE_H__ + +#include "nm-default.h" + +#include +#include +#include + +#include "systemd/sd-adapt-shared/nm-sd-adapt-shared.h" + +#ifndef HAVE_SYS_AUXV_H +#define HAVE_SYS_AUXV_H 0 +#endif + +/***************************************************************************** + * The remainder of the header is only enabled when building the systemd code + * itself. + *****************************************************************************/ + +#if (NETWORKMANAGER_COMPILATION) & NM_NETWORKMANAGER_COMPILATION_WITH_SYSTEMD + +#include +#include +#include +#include +#include +#ifdef HAVE_SYS_AUXV_H +#include +#endif +#include +#include +#include + +#include + +/* Missing in Linux 3.2.0, in Ubuntu 12.04 */ +#ifndef BPF_XOR +#define BPF_XOR 0xa0 +#endif + +#ifndef ETHERTYPE_LLDP +#define ETHERTYPE_LLDP 0x88cc +#endif + +#ifndef HAVE_SECURE_GETENV +# ifdef HAVE___SECURE_GETENV +# define secure_getenv __secure_getenv +# else +# error neither secure_getenv nor __secure_getenv is available +# endif +#endif + +/*****************************************************************************/ + +static inline int +sd_notify (int unset_environment, const char *state) +{ + return 0; +} + +/* Can't include both net/if.h and linux/if.h; so have to define this here */ +#ifndef IF_NAMESIZE +#define IF_NAMESIZE 16 +#endif + +#ifndef IFNAMSIZ +#define IFNAMSIZ IF_NAMESIZE +#endif + +#ifndef MAX_HANDLE_SZ +#define MAX_HANDLE_SZ 128 +#endif + +#include "sd-id128.h" +#include "sparse-endian.h" +#include "async.h" +#include "util.h" + +#endif /* (NETWORKMANAGER_COMPILATION) & NM_NETWORKMANAGER_COMPILATION_WITH_SYSTEMD */ + +#endif /* __NM_SD_ADAPT_CORE_H__ */ + diff --git a/src/systemd/sd-adapt/sd-daemon.h b/src/systemd/sd-adapt-core/sd-daemon.h similarity index 100% rename from src/systemd/sd-adapt/sd-daemon.h rename to src/systemd/sd-adapt-core/sd-daemon.h diff --git a/src/systemd/sd-adapt/sd-device.h b/src/systemd/sd-adapt-core/sd-device.h similarity index 100% rename from src/systemd/sd-adapt/sd-device.h rename to src/systemd/sd-adapt-core/sd-device.h diff --git a/src/systemd/sd-adapt/stat-util.h b/src/systemd/sd-adapt-core/stat-util.h similarity index 100% rename from src/systemd/sd-adapt/stat-util.h rename to src/systemd/sd-adapt-core/stat-util.h diff --git a/src/systemd/sd-adapt/serialize.h b/src/systemd/sd-adapt/serialize.h deleted file mode 100644 index 637892c2d6..0000000000 --- a/src/systemd/sd-adapt/serialize.h +++ /dev/null @@ -1,3 +0,0 @@ -#pragma once - -/* dummy header */ diff --git a/src/systemd/src/libsystemd-network/arp-util.c b/src/systemd/src/libsystemd-network/arp-util.c index 4fbecb540c..154ba6b72e 100644 --- a/src/systemd/src/libsystemd-network/arp-util.c +++ b/src/systemd/src/libsystemd-network/arp-util.c @@ -3,7 +3,7 @@ Copyright © 2014 Axis Communications AB. All rights reserved. ***/ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-core.h" #include #include diff --git a/src/systemd/src/libsystemd-network/dhcp-identifier.c b/src/systemd/src/libsystemd-network/dhcp-identifier.c index e2055386b5..91f5e1b0c8 100644 --- a/src/systemd/src/libsystemd-network/dhcp-identifier.c +++ b/src/systemd/src/libsystemd-network/dhcp-identifier.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-core.h" #include #include diff --git a/src/systemd/src/libsystemd-network/dhcp-network.c b/src/systemd/src/libsystemd-network/dhcp-network.c index 8d8cdf9da7..ba59690817 100644 --- a/src/systemd/src/libsystemd-network/dhcp-network.c +++ b/src/systemd/src/libsystemd-network/dhcp-network.c @@ -3,7 +3,7 @@ Copyright © 2013 Intel Corporation. All rights reserved. ***/ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-core.h" #include #include diff --git a/src/systemd/src/libsystemd-network/dhcp-option.c b/src/systemd/src/libsystemd-network/dhcp-option.c index 4a4f7de020..b065ae499e 100644 --- a/src/systemd/src/libsystemd-network/dhcp-option.c +++ b/src/systemd/src/libsystemd-network/dhcp-option.c @@ -3,7 +3,7 @@ Copyright © 2013 Intel Corporation. All rights reserved. ***/ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-core.h" #include #include diff --git a/src/systemd/src/libsystemd-network/dhcp-packet.c b/src/systemd/src/libsystemd-network/dhcp-packet.c index a2e14ed2ee..9e565e2887 100644 --- a/src/systemd/src/libsystemd-network/dhcp-packet.c +++ b/src/systemd/src/libsystemd-network/dhcp-packet.c @@ -3,7 +3,7 @@ Copyright © 2013 Intel Corporation. All rights reserved. ***/ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-core.h" #include #include diff --git a/src/systemd/src/libsystemd-network/dhcp6-network.c b/src/systemd/src/libsystemd-network/dhcp6-network.c index 22e4201746..73c195a71a 100644 --- a/src/systemd/src/libsystemd-network/dhcp6-network.c +++ b/src/systemd/src/libsystemd-network/dhcp6-network.c @@ -3,7 +3,7 @@ Copyright © 2014 Intel Corporation. All rights reserved. ***/ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-core.h" #include #include diff --git a/src/systemd/src/libsystemd-network/dhcp6-option.c b/src/systemd/src/libsystemd-network/dhcp6-option.c index c53529d8bf..5a83aaaa45 100644 --- a/src/systemd/src/libsystemd-network/dhcp6-option.c +++ b/src/systemd/src/libsystemd-network/dhcp6-option.c @@ -3,7 +3,7 @@ Copyright © 2014-2015 Intel Corporation. All rights reserved. ***/ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-core.h" #include #include diff --git a/src/systemd/src/libsystemd-network/lldp-neighbor.c b/src/systemd/src/libsystemd-network/lldp-neighbor.c index c2627bbe6e..0b4929af36 100644 --- a/src/systemd/src/libsystemd-network/lldp-neighbor.c +++ b/src/systemd/src/libsystemd-network/lldp-neighbor.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-core.h" #include "alloc-util.h" #include "escape.h" diff --git a/src/systemd/src/libsystemd-network/lldp-network.c b/src/systemd/src/libsystemd-network/lldp-network.c index c2af0368c1..5ba9f081ea 100644 --- a/src/systemd/src/libsystemd-network/lldp-network.c +++ b/src/systemd/src/libsystemd-network/lldp-network.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-core.h" #include #include diff --git a/src/systemd/src/libsystemd-network/network-internal.c b/src/systemd/src/libsystemd-network/network-internal.c index 520f0783c3..d33c4febcc 100644 --- a/src/systemd/src/libsystemd-network/network-internal.c +++ b/src/systemd/src/libsystemd-network/network-internal.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-core.h" #include #include diff --git a/src/systemd/src/libsystemd-network/sd-dhcp-client.c b/src/systemd/src/libsystemd-network/sd-dhcp-client.c index aac24767c8..4fb0688062 100644 --- a/src/systemd/src/libsystemd-network/sd-dhcp-client.c +++ b/src/systemd/src/libsystemd-network/sd-dhcp-client.c @@ -3,7 +3,7 @@ Copyright © 2013 Intel Corporation. All rights reserved. ***/ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-core.h" #include #include diff --git a/src/systemd/src/libsystemd-network/sd-dhcp-lease.c b/src/systemd/src/libsystemd-network/sd-dhcp-lease.c index b95ad0c978..fc5077c2b2 100644 --- a/src/systemd/src/libsystemd-network/sd-dhcp-lease.c +++ b/src/systemd/src/libsystemd-network/sd-dhcp-lease.c @@ -3,7 +3,7 @@ Copyright © 2013 Intel Corporation. All rights reserved. ***/ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-core.h" #include #include diff --git a/src/systemd/src/libsystemd-network/sd-dhcp6-client.c b/src/systemd/src/libsystemd-network/sd-dhcp6-client.c index 63b7cf2b71..6b55083ec6 100644 --- a/src/systemd/src/libsystemd-network/sd-dhcp6-client.c +++ b/src/systemd/src/libsystemd-network/sd-dhcp6-client.c @@ -3,7 +3,7 @@ Copyright © 2014-2015 Intel Corporation. All rights reserved. ***/ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-core.h" #include #include diff --git a/src/systemd/src/libsystemd-network/sd-dhcp6-lease.c b/src/systemd/src/libsystemd-network/sd-dhcp6-lease.c index 8c41dce0d0..48188bf3ec 100644 --- a/src/systemd/src/libsystemd-network/sd-dhcp6-lease.c +++ b/src/systemd/src/libsystemd-network/sd-dhcp6-lease.c @@ -3,7 +3,7 @@ Copyright © 2014-2015 Intel Corporation. All rights reserved. ***/ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-core.h" #include diff --git a/src/systemd/src/libsystemd-network/sd-ipv4acd.c b/src/systemd/src/libsystemd-network/sd-ipv4acd.c index 210ff89efa..b43da6b496 100644 --- a/src/systemd/src/libsystemd-network/sd-ipv4acd.c +++ b/src/systemd/src/libsystemd-network/sd-ipv4acd.c @@ -3,7 +3,7 @@ Copyright © 2014 Axis Communications AB. All rights reserved. ***/ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-core.h" #include #include diff --git a/src/systemd/src/libsystemd-network/sd-ipv4ll.c b/src/systemd/src/libsystemd-network/sd-ipv4ll.c index 8f098f20dd..f1b94829af 100644 --- a/src/systemd/src/libsystemd-network/sd-ipv4ll.c +++ b/src/systemd/src/libsystemd-network/sd-ipv4ll.c @@ -3,7 +3,7 @@ Copyright © 2014 Axis Communications AB. All rights reserved. ***/ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-core.h" #include #include diff --git a/src/systemd/src/libsystemd-network/sd-lldp.c b/src/systemd/src/libsystemd-network/sd-lldp.c index 72cb6e8bd5..741128e1d0 100644 --- a/src/systemd/src/libsystemd-network/sd-lldp.c +++ b/src/systemd/src/libsystemd-network/sd-lldp.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-core.h" #include #include diff --git a/src/systemd/src/libsystemd/sd-event/event-util.c b/src/systemd/src/libsystemd/sd-event/event-util.c index 1eb54de442..e8384cfd6b 100644 --- a/src/systemd/src/libsystemd/sd-event/event-util.c +++ b/src/systemd/src/libsystemd/sd-event/event-util.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-core.h" #include diff --git a/src/systemd/src/libsystemd/sd-event/sd-event.c b/src/systemd/src/libsystemd/sd-event/sd-event.c index fc8c5148ee..e49cc9d865 100644 --- a/src/systemd/src/libsystemd/sd-event/sd-event.c +++ b/src/systemd/src/libsystemd/sd-event/sd-event.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-core.h" #include #include diff --git a/src/systemd/src/libsystemd/sd-id128/id128-util.c b/src/systemd/src/libsystemd/sd-id128/id128-util.c index 1e654f0ea4..f8f0883caf 100644 --- a/src/systemd/src/libsystemd/sd-id128/id128-util.c +++ b/src/systemd/src/libsystemd/sd-id128/id128-util.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-core.h" #include #include diff --git a/src/systemd/src/libsystemd/sd-id128/sd-id128.c b/src/systemd/src/libsystemd/sd-id128/sd-id128.c index 4cad3bccd7..4a57b82fb0 100644 --- a/src/systemd/src/libsystemd/sd-id128/sd-id128.c +++ b/src/systemd/src/libsystemd/sd-id128/sd-id128.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-core.h" #include #include diff --git a/src/systemd/src/shared/dns-domain.c b/src/systemd/src/shared/dns-domain.c index ccf6298eea..ebea861f15 100644 --- a/src/systemd/src/shared/dns-domain.c +++ b/src/systemd/src/shared/dns-domain.c @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1+ */ -#include "nm-sd-adapt.h" +#include "nm-sd-adapt-core.h" #if 0 /* NM_IGNORED */ #if HAVE_LIBIDN2 diff --git a/src/tests/meson.build b/src/tests/meson.build index a009c8fc2c..9c51e8d423 100644 --- a/src/tests/meson.build +++ b/src/tests/meson.build @@ -37,7 +37,10 @@ exe = executable( include_directories: src_inc, dependencies: nm_core_dep, c_args: cflags, - link_with: libsystemd_nm, + link_with: [ + libnm_systemd_core, + libnm_systemd_shared, + ], ) test( diff --git a/src/tests/test-general.c b/src/tests/test-general.c index c9aad4b281..0166655d66 100644 --- a/src/tests/test-general.c +++ b/src/tests/test-general.c @@ -31,7 +31,7 @@ #include "NetworkManagerUtils.h" #include "nm-core-internal.h" #include "nm-core-utils.h" -#include "systemd/nm-sd-utils.h" +#include "systemd/nm-sd-utils-core.h" #include "dns/nm-dns-manager.h" #include "nm-connectivity.h" diff --git a/src/tests/test-systemd.c b/src/tests/test-systemd.c index 6015e9df07..2d018517c5 100644 --- a/src/tests/test-systemd.c +++ b/src/tests/test-systemd.c @@ -20,7 +20,7 @@ #include "nm-default.h" #include "systemd/nm-sd.h" -#include "systemd/nm-sd-utils.h" +#include "systemd/nm-sd-utils-shared.h" #include "nm-test-utils-core.h" @@ -48,6 +48,13 @@ nm_utils_get_monotonic_timestamp_s (void) NMLogDomain _nm_logging_enabled_state[_LOGL_N_REAL]; +gboolean +_nm_log_enabled (NMLogLevel level, + NMLogDomain domain) +{ + return FALSE; +} + void _nm_log_impl (const char *file, guint line,