diff options
Diffstat (limited to 'meta/recipes-core/systemd/systemd/0005-src-basic-missing.h-check-for-missing-strndupa.patch')
-rw-r--r-- | meta/recipes-core/systemd/systemd/0005-src-basic-missing.h-check-for-missing-strndupa.patch | 457 |
1 files changed, 353 insertions, 104 deletions
diff --git a/meta/recipes-core/systemd/systemd/0005-src-basic-missing.h-check-for-missing-strndupa.patch b/meta/recipes-core/systemd/systemd/0005-src-basic-missing.h-check-for-missing-strndupa.patch index 47ee2795a7..36545c2f60 100644 --- a/meta/recipes-core/systemd/systemd/0005-src-basic-missing.h-check-for-missing-strndupa.patch +++ b/meta/recipes-core/systemd/systemd/0005-src-basic-missing.h-check-for-missing-strndupa.patch @@ -1,7 +1,7 @@ -From 399fd3eda3045636a70da438a0fd1406cc332ed1 Mon Sep 17 00:00:00 2001 +From cef23a651ea200e30e1e6ed2a2564505e3a42d46 Mon Sep 17 00:00:00 2001 From: Chen Qi <Qi.Chen@windriver.com> Date: Mon, 25 Feb 2019 14:18:21 +0800 -Subject: [PATCH 05/24] src/basic/missing.h: check for missing strndupa +Subject: [PATCH] src/basic/missing.h: check for missing strndupa include missing.h for definition of strndupa @@ -11,68 +11,117 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Chen Qi <Qi.Chen@windriver.com> [Rebased for v242] Signed-off-by: Andrej Valek <andrej.valek@siemens.com> +[rebased for systemd 243] +Signed-off-by: Scott Murray <scott.murray@konsulko.com> +Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com> +[rebased for systemd 244] +[Rebased for v247] +Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com> + --- meson.build | 1 + src/backlight/backlight.c | 1 + + src/basic/cgroup-util.c | 1 + src/basic/env-util.c | 1 + + src/basic/log.c | 1 + src/basic/missing_stdlib.h | 12 ++++++++++++ src/basic/mkdir.c | 1 + + src/basic/mountpoint-util.c | 1 + src/basic/parse-util.c | 1 + + src/basic/path-lookup.c | 1 + + src/basic/percent-util.c | 1 + src/basic/proc-cmdline.c | 1 + src/basic/procfs-util.c | 1 + src/basic/time-util.c | 1 + + src/boot/bless-boot.c | 1 + src/core/dbus-cgroup.c | 1 + + src/core/dbus-execute.c | 1 + src/core/dbus-util.c | 1 + + src/core/execute.c | 1 + src/core/kmod-setup.c | 1 + src/core/service.c | 1 + + src/coredump/coredump-vacuum.c | 1 + + src/journal-remote/journal-remote-main.c | 1 + src/journal/journalctl.c | 1 + src/libsystemd/sd-bus/bus-message.c | 1 + src/libsystemd/sd-bus/bus-objects.c | 1 + + src/libsystemd/sd-bus/bus-socket.c | 1 + + src/libsystemd/sd-bus/sd-bus.c | 1 + src/libsystemd/sd-bus/test-bus-benchmark.c | 1 + + src/libsystemd/sd-journal/sd-journal.c | 1 + src/locale/keymap-util.c | 1 + + src/login/pam_systemd.c | 1 + + src/network/generator/network-generator.c | 1 + src/nspawn/nspawn-settings.c | 1 + + src/nss-mymachines/nss-mymachines.c | 1 + + src/portable/portable.c | 1 + + src/resolve/resolvectl.c | 1 + + src/shared/bus-get-properties.c | 1 + + src/shared/bus-unit-procs.c | 1 + + src/shared/bus-unit-util.c | 1 + + src/shared/bus-util.c | 1 + src/shared/dns-domain.c | 1 + src/shared/journal-importer.c | 1 + src/shared/logs-show.c | 1 + src/shared/pager.c | 1 + - src/shared/path-lookup.c | 1 + src/shared/uid-range.c | 1 + src/socket-proxy/socket-proxyd.c | 1 + src/test/test-hexdecoct.c | 1 + src/udev/udev-builtin-path_id.c | 1 + + src/udev/udev-event.c | 1 + src/udev/udev-rules.c | 1 + - 29 files changed, 40 insertions(+) + 51 files changed, 62 insertions(+) --- a/meson.build +++ b/meson.build -@@ -572,6 +572,7 @@ foreach ident : [ - #include <unistd.h>'''], - ['explicit_bzero' , '''#include <string.h>'''], - ['reallocarray', '''#include <malloc.h>'''], -+ ['strndupa' , '''#include <string.h>'''], - ] +@@ -507,6 +507,7 @@ foreach ident : ['secure_getenv', '__sec + endforeach - have = cc.has_function(ident[0], prefix : ident[1], args : '-D_GNU_SOURCE') + foreach ident : [ ++ ['strndupa' , '''#include <string.h>'''], + ['memfd_create', '''#include <sys/mman.h>'''], + ['gettid', '''#include <sys/types.h> + #include <unistd.h>'''], --- a/src/backlight/backlight.c +++ b/src/backlight/backlight.c -@@ -17,6 +17,7 @@ +@@ -19,6 +19,7 @@ #include "string-util.h" #include "strv.h" #include "util.h" -+#include "missing.h" ++#include "missing_stdlib.h" + + static int help(void) { + _cleanup_free_ char *link = NULL; +--- a/src/basic/cgroup-util.c ++++ b/src/basic/cgroup-util.c +@@ -37,6 +37,7 @@ + #include "unit-name.h" + #include "user-util.h" + #include "xattr-util.h" ++#include "missing_stdlib.h" - static int find_pci_or_platform_parent(sd_device *device, sd_device **ret) { - const char *subsystem, *sysname, *value; + static int cg_enumerate_items(const char *controller, const char *path, FILE **_f, const char *item) { + _cleanup_free_ char *fs = NULL; --- a/src/basic/env-util.c +++ b/src/basic/env-util.c -@@ -16,6 +16,7 @@ +@@ -19,6 +19,7 @@ #include "string-util.h" #include "strv.h" #include "utf8.h" -+#include "missing.h" ++#include "missing_stdlib.h" + + /* We follow bash for the character set. Different shells have different rules. */ + #define VALID_BASH_ENV_NAME_CHARS \ +--- a/src/basic/log.c ++++ b/src/basic/log.c +@@ -36,6 +36,7 @@ + #include "terminal-util.h" + #include "time-util.h" + #include "utf8.h" ++#include "missing_stdlib.h" + + #define SNDBUF_SIZE (8*1024*1024) - #define VALID_CHARS_ENV_NAME \ - DIGITS LETTERS \ --- a/src/basic/missing_stdlib.h +++ b/src/basic/missing_stdlib.h @@ -11,3 +11,15 @@ @@ -93,261 +142,461 @@ Signed-off-by: Andrej Valek <andrej.valek@siemens.com> +#endif --- a/src/basic/mkdir.c +++ b/src/basic/mkdir.c -@@ -14,6 +14,7 @@ +@@ -15,6 +15,7 @@ #include "stat-util.h" #include "stdio-util.h" #include "user-util.h" -+#include "missing.h" ++#include "missing_stdlib.h" - int mkdir_safe_internal(const char *path, mode_t mode, uid_t uid, gid_t gid, MkdirFlags flags, mkdir_func_t _mkdir) { - struct stat st; + int mkdir_safe_internal( + const char *path, +--- a/src/basic/mountpoint-util.c ++++ b/src/basic/mountpoint-util.c +@@ -13,6 +13,7 @@ + #include "missing_stat.h" + #include "missing_syscall.h" + #include "mkdir.h" ++#include "missing_stdlib.h" + #include "mountpoint-util.h" + #include "nulstr-util.h" + #include "parse-util.h" --- a/src/basic/parse-util.c +++ b/src/basic/parse-util.c -@@ -19,6 +19,7 @@ - #include "process-util.h" +@@ -18,6 +18,7 @@ #include "stat-util.h" #include "string-util.h" -+#include "missing.h" + #include "strv.h" ++#include "missing_stdlib.h" int parse_boolean(const char *v) { if (!v) +--- a/src/basic/path-lookup.c ++++ b/src/basic/path-lookup.c +@@ -16,6 +16,7 @@ + #include "strv.h" + #include "tmpfile-util.h" + #include "user-util.h" ++#include "missing_stdlib.h" + + int xdg_user_runtime_dir(char **ret, const char *suffix) { + const char *e; +--- a/src/basic/percent-util.c ++++ b/src/basic/percent-util.c +@@ -3,6 +3,7 @@ + #include "percent-util.h" + #include "string-util.h" + #include "parse-util.h" ++#include "missing_stdlib.h" + + static int parse_parts_value_whole(const char *p, const char *symbol) { + const char *pc, *n; --- a/src/basic/proc-cmdline.c +++ b/src/basic/proc-cmdline.c @@ -15,6 +15,7 @@ #include "string-util.h" #include "util.h" #include "virt.h" -+#include "missing.h" ++#include "missing_stdlib.h" int proc_cmdline(char **ret) { const char *e; --- a/src/basic/procfs-util.c +++ b/src/basic/procfs-util.c -@@ -11,6 +11,7 @@ +@@ -12,6 +12,7 @@ #include "procfs-util.h" #include "stdio-util.h" #include "string-util.h" -+#include "missing.h" ++#include "missing_stdlib.h" - int procfs_tasks_get_limit(uint64_t *ret) { + int procfs_get_pid_max(uint64_t *ret) { _cleanup_free_ char *value = NULL; --- a/src/basic/time-util.c +++ b/src/basic/time-util.c -@@ -28,6 +28,7 @@ +@@ -26,6 +26,7 @@ #include "string-util.h" #include "strv.h" #include "time-util.h" -+#include "missing.h" ++#include "missing_stdlib.h" static clockid_t map_clock_id(clockid_t c) { ---- a/src/core/dbus-cgroup.c -+++ b/src/core/dbus-cgroup.c -@@ -15,6 +15,7 @@ - #include "fileio.h" - #include "limits-util.h" - #include "path-util.h" -+#include "missing.h" +--- a/src/boot/bless-boot.c ++++ b/src/boot/bless-boot.c +@@ -19,6 +19,7 @@ + #include "util.h" + #include "verbs.h" + #include "virt.h" ++#include "missing_stdlib.h" + + static char **arg_path = NULL; - static BUS_DEFINE_PROPERTY_GET_ENUM(property_get_cgroup_device_policy, cgroup_device_policy, CGroupDevicePolicy); +--- a/src/core/dbus-execute.c ++++ b/src/core/dbus-execute.c +@@ -44,6 +44,7 @@ + #include "unit-printf.h" + #include "user-util.h" + #include "utf8.h" ++#include "missing_stdlib.h" + BUS_DEFINE_PROPERTY_GET_ENUM(bus_property_get_exec_output, exec_output, ExecOutput); + static BUS_DEFINE_PROPERTY_GET_ENUM(property_get_exec_input, exec_input, ExecInput); --- a/src/core/dbus-util.c +++ b/src/core/dbus-util.c -@@ -7,6 +7,7 @@ +@@ -9,6 +9,7 @@ #include "unit-printf.h" #include "user-util.h" #include "unit.h" -+#include "missing.h" ++#include "missing_stdlib.h" int bus_property_get_triggered_unit( sd_bus *bus, +--- a/src/core/execute.c ++++ b/src/core/execute.c +@@ -102,6 +102,7 @@ + #include "unit-serialize.h" + #include "user-util.h" + #include "utmp-wtmp.h" ++#include "missing_stdlib.h" + + #define IDLE_TIMEOUT_USEC (5*USEC_PER_SEC) + #define IDLE_TIMEOUT2_USEC (1*USEC_PER_SEC) --- a/src/core/kmod-setup.c +++ b/src/core/kmod-setup.c @@ -11,6 +11,7 @@ - #include "kmod-setup.h" - #include "macro.h" + #include "recurse-dir.h" #include "string-util.h" -+#include "missing.h" + #include "missing_type.h" ++#include "missing_stdlib.h" #if HAVE_KMOD - #include <libkmod.h> + #include "module-util.h" --- a/src/core/service.c +++ b/src/core/service.c @@ -42,6 +42,7 @@ #include "unit.h" #include "utf8.h" #include "util.h" -+#include "missing.h" ++#include "missing_stdlib.h" static const UnitActiveState state_translation_table[_SERVICE_STATE_MAX] = { [SERVICE_DEAD] = UNIT_INACTIVE, +--- a/src/coredump/coredump-vacuum.c ++++ b/src/coredump/coredump-vacuum.c +@@ -16,6 +16,7 @@ + #include "string-util.h" + #include "time-util.h" + #include "user-util.h" ++#include "missing_stdlib.h" + + #define DEFAULT_MAX_USE_LOWER (uint64_t) (1ULL*1024ULL*1024ULL) /* 1 MiB */ + #define DEFAULT_MAX_USE_UPPER (uint64_t) (4ULL*1024ULL*1024ULL*1024ULL) /* 4 GiB */ +--- a/src/journal-remote/journal-remote-main.c ++++ b/src/journal-remote/journal-remote-main.c +@@ -24,6 +24,7 @@ + #include "stat-util.h" + #include "string-table.h" + #include "strv.h" ++#include "missing_stdlib.h" + + #define PRIV_KEY_FILE CERTIFICATE_ROOT "/private/journal-remote.pem" + #define CERT_FILE CERTIFICATE_ROOT "/certs/journal-remote.pem" --- a/src/journal/journalctl.c +++ b/src/journal/journalctl.c -@@ -67,6 +67,7 @@ - #include "tmpfile-util.h" +@@ -73,6 +73,7 @@ #include "unit-name.h" #include "user-util.h" -+#include "missing.h" + #include "varlink.h" ++#include "missing_stdlib.h" #define DEFAULT_FSS_INTERVAL_USEC (15*USEC_PER_MINUTE) - + #define PROCESS_INOTIFY_INTERVAL 1024 /* Every 1,024 messages processed */ --- a/src/libsystemd/sd-bus/bus-message.c +++ b/src/libsystemd/sd-bus/bus-message.c -@@ -21,6 +21,7 @@ +@@ -20,6 +20,7 @@ #include "strv.h" #include "time-util.h" #include "utf8.h" -+#include "missing.h" ++#include "missing_stdlib.h" static int message_append_basic(sd_bus_message *m, char type, const void *p, const void **stored); --- a/src/libsystemd/sd-bus/bus-objects.c +++ b/src/libsystemd/sd-bus/bus-objects.c -@@ -13,6 +13,7 @@ +@@ -12,6 +12,7 @@ #include "set.h" #include "string-util.h" #include "strv.h" -+#include "missing.h" ++#include "missing_stdlib.h" static int node_vtable_get_userdata( sd_bus *bus, +--- a/src/libsystemd/sd-bus/bus-socket.c ++++ b/src/libsystemd/sd-bus/bus-socket.c +@@ -28,6 +28,7 @@ + #include "string-util.h" + #include "user-util.h" + #include "utf8.h" ++#include "missing_stdlib.h" + + #define SNDBUF_SIZE (8*1024*1024) + +--- a/src/libsystemd/sd-bus/sd-bus.c ++++ b/src/libsystemd/sd-bus/sd-bus.c +@@ -43,6 +43,7 @@ + #include "string-util.h" + #include "strv.h" + #include "user-util.h" ++#include "missing_stdlib.h" + + #define log_debug_bus_message(m) \ + do { \ --- a/src/libsystemd/sd-bus/test-bus-benchmark.c +++ b/src/libsystemd/sd-bus/test-bus-benchmark.c @@ -14,6 +14,7 @@ - #include "missing_resource.h" + #include "string-util.h" #include "time-util.h" #include "util.h" -+#include "missing.h" ++#include "missing_stdlib.h" #define MAX_SIZE (2*1024*1024) +--- a/src/libsystemd/sd-journal/sd-journal.c ++++ b/src/libsystemd/sd-journal/sd-journal.c +@@ -41,6 +41,7 @@ + #include "string-util.h" + #include "strv.h" + #include "syslog-util.h" ++#include "missing_stdlib.h" + + #define JOURNAL_FILES_MAX 7168 + --- a/src/locale/keymap-util.c +++ b/src/locale/keymap-util.c -@@ -23,6 +23,7 @@ +@@ -24,6 +24,7 @@ #include "string-util.h" #include "strv.h" #include "tmpfile-util.h" -+#include "missing.h" ++#include "missing_stdlib.h" static bool startswith_comma(const char *s, const char *prefix) { s = startswith(s, prefix); +--- a/src/login/pam_systemd.c ++++ b/src/login/pam_systemd.c +@@ -31,6 +31,7 @@ + #include "locale-util.h" + #include "login-util.h" + #include "macro.h" ++#include "missing_stdlib.h" + #include "pam-util.h" + #include "parse-util.h" + #include "path-util.h" +--- a/src/network/generator/network-generator.c ++++ b/src/network/generator/network-generator.c +@@ -13,6 +13,7 @@ + #include "string-table.h" + #include "string-util.h" + #include "strv.h" ++#include "missing_stdlib.h" + + /* + # .network --- a/src/nspawn/nspawn-settings.c +++ b/src/nspawn/nspawn-settings.c -@@ -16,6 +16,7 @@ +@@ -17,6 +17,7 @@ #include "strv.h" #include "user-util.h" #include "util.h" -+#include "missing.h" ++#include "missing_stdlib.h" Settings *settings_new(void) { Settings *s; +--- a/src/nss-mymachines/nss-mymachines.c ++++ b/src/nss-mymachines/nss-mymachines.c +@@ -21,6 +21,7 @@ + #include "nss-util.h" + #include "signal-util.h" + #include "string-util.h" ++#include "missing_stdlib.h" + + static void setup_logging_once(void) { + static pthread_once_t once = PTHREAD_ONCE_INIT; +--- a/src/portable/portable.c ++++ b/src/portable/portable.c +@@ -39,6 +39,7 @@ + #include "strv.h" + #include "tmpfile-util.h" + #include "user-util.h" ++#include "missing_stdlib.h" + + /* Markers used in the first line of our 20-portable.conf unit file drop-in to determine, that a) the unit file was + * dropped there by the portable service logic and b) for which image it was dropped there. */ +--- a/src/resolve/resolvectl.c ++++ b/src/resolve/resolvectl.c +@@ -43,6 +43,7 @@ + #include "utf8.h" + #include "verb-log-control.h" + #include "verbs.h" ++#include "missing_stdlib.h" + + static int arg_family = AF_UNSPEC; + static int arg_ifindex = 0; +--- a/src/shared/bus-get-properties.c ++++ b/src/shared/bus-get-properties.c +@@ -4,6 +4,7 @@ + #include "rlimit-util.h" + #include "stdio-util.h" + #include "string-util.h" ++#include "missing_stdlib.h" + + int bus_property_get_bool( + sd_bus *bus, +--- a/src/shared/bus-unit-procs.c ++++ b/src/shared/bus-unit-procs.c +@@ -10,6 +10,7 @@ + #include "sort-util.h" + #include "string-util.h" + #include "terminal-util.h" ++#include "missing_stdlib.h" + + struct CGroupInfo { + char *cgroup_path; +--- a/src/shared/bus-unit-util.c ++++ b/src/shared/bus-unit-util.c +@@ -49,6 +49,7 @@ + #include "unit-def.h" + #include "user-util.h" + #include "utf8.h" ++#include "missing_stdlib.h" + + int bus_parse_unit_info(sd_bus_message *message, UnitInfo *u) { + assert(message); +--- a/src/shared/bus-util.c ++++ b/src/shared/bus-util.c +@@ -21,6 +21,7 @@ + #include "path-util.h" + #include "socket-util.h" + #include "stdio-util.h" ++#include "missing_stdlib.h" + + static int name_owner_change_callback(sd_bus_message *m, void *userdata, sd_bus_error *ret_error) { + sd_event *e = userdata; --- a/src/shared/dns-domain.c +++ b/src/shared/dns-domain.c -@@ -24,6 +24,7 @@ +@@ -17,6 +17,7 @@ #include "string-util.h" #include "strv.h" #include "utf8.h" -+#include "missing.h" ++#include "missing_stdlib.h" int dns_label_unescape(const char **name, char *dest, size_t sz, DNSLabelFlags flags) { const char *n; --- a/src/shared/journal-importer.c +++ b/src/shared/journal-importer.c -@@ -13,6 +13,7 @@ +@@ -15,6 +15,7 @@ #include "parse-util.h" #include "string-util.h" #include "unaligned.h" -+#include "missing.h" ++#include "missing_stdlib.h" enum { IMPORTER_STATE_LINE = 0, /* waiting to read, or reading line */ --- a/src/shared/logs-show.c +++ b/src/shared/logs-show.c -@@ -38,6 +38,7 @@ - #include "time-util.h" +@@ -42,6 +42,7 @@ #include "utf8.h" #include "util.h" -+#include "missing.h" + #include "web-util.h" ++#include "missing_stdlib.h" /* up to three lines (each up to 100 characters) or 300 characters, whichever is less */ #define PRINT_LINE_THRESHOLD 3 --- a/src/shared/pager.c +++ b/src/shared/pager.c -@@ -25,6 +25,7 @@ +@@ -26,6 +26,7 @@ #include "strv.h" #include "terminal-util.h" #include "util.h" -+#include "missing.h" ++#include "missing_stdlib.h" static pid_t pager_pid = 0; ---- a/src/shared/path-lookup.c -+++ b/src/shared/path-lookup.c -@@ -20,6 +20,7 @@ - #include "tmpfile-util.h" - #include "user-util.h" - #include "util.h" -+#include "missing.h" - - int xdg_user_runtime_dir(char **ret, const char *suffix) { - const char *e; --- a/src/shared/uid-range.c +++ b/src/shared/uid-range.c @@ -9,6 +9,7 @@ #include "sort-util.h" #include "uid-range.h" #include "user-util.h" -+#include "missing.h" ++#include "missing_stdlib.h" static bool uid_range_intersect(UidRange *range, uid_t start, uid_t nr) { assert(range); --- a/src/socket-proxy/socket-proxyd.c +++ b/src/socket-proxy/socket-proxyd.c -@@ -28,6 +28,7 @@ +@@ -26,6 +26,7 @@ #include "socket-util.h" #include "string-util.h" #include "util.h" -+#include "missing.h" ++#include "missing_stdlib.h" #define BUFFER_SIZE (256 * 1024) --- a/src/test/test-hexdecoct.c +++ b/src/test/test-hexdecoct.c -@@ -6,6 +6,7 @@ - #include "hexdecoct.h" +@@ -7,6 +7,7 @@ #include "macro.h" + #include "random-util.h" #include "string-util.h" -+#include "missing.h" ++#include "missing_stdlib.h" + #include "tests.h" - static void test_hexchar(void) { - assert_se(hexchar(0xa) == 'a'); + TEST(hexchar) { --- a/src/udev/udev-builtin-path_id.c +++ b/src/udev/udev-builtin-path_id.c -@@ -23,6 +23,7 @@ - #include "strv.h" +@@ -22,6 +22,7 @@ #include "sysexits.h" #include "udev-builtin.h" -+#include "missing.h" + #include "udev-util.h" ++#include "missing_stdlib.h" _printf_(2,3) static void path_prepend(char **path, const char *fmt, ...) { +--- a/src/udev/udev-event.c ++++ b/src/udev/udev-event.c +@@ -35,6 +35,7 @@ + #include "udev-util.h" + #include "udev-watch.h" + #include "user-util.h" ++#include "missing_stdlib.h" + + typedef struct Spawn { + sd_device *device; --- a/src/udev/udev-rules.c +++ b/src/udev/udev-rules.c -@@ -40,6 +40,7 @@ - #include "udev.h" +@@ -34,6 +34,7 @@ + #include "udev-util.h" #include "user-util.h" - #include "util.h" -+#include "missing.h" + #include "virt.h" ++#include "missing_stdlib.h" - #define PREALLOC_TOKEN 2048 #define RULES_DIRS (const char* const*) CONF_PATHS_STRV("udev/rules.d") ---- a/src/login/pam_systemd.c -+++ b/src/login/pam_systemd.c -@@ -27,6 +27,7 @@ - #include "hostname-util.h" - #include "login-util.h" - #include "macro.h" -+#include "missing.h" + +--- a/src/core/dbus-cgroup.c ++++ b/src/core/dbus-cgroup.c +@@ -21,6 +21,7 @@ #include "parse-util.h" #include "path-util.h" - #include "process-util.h" + #include "percent-util.h" ++#include "missing_stdlib.h" + #include "socket-util.h" + + BUS_DEFINE_PROPERTY_GET(bus_property_get_tasks_max, "t", TasksMax, tasks_max_resolve); +--- a/src/fstab-generator/fstab-generator.c ++++ b/src/fstab-generator/fstab-generator.c +@@ -29,6 +29,7 @@ + #include "util.h" + #include "virt.h" + #include "volatile-util.h" ++#include "missing_stdlib.h" + + typedef enum MountPointFlags { + MOUNT_NOAUTO = 1 << 0, |