From a22692d718d922e8ba28b15d664344a21554bb3f Mon Sep 17 00:00:00 2001 From: Fabrice Fontaine Date: Fri, 11 Jan 2019 16:07:00 +0100 Subject: [PATCH 1/5] capability: fix build without PR_CAP_AMBIENT systemd fails to build on kernel without PR_CAP_AMBIENT (< 4.3) since https://github.com/systemd/systemd/commit/2a03bb3e65327c73008f1db485ffc75c432dc6b2 To fix this error, include missing_prctl.h in all files using PR_CAP_AMBIENT Fixes: - http://autobuild.buildroot.org/results/699c078aa078240c6741da4dbd0871450ceeca92 Signed-off-by: Fabrice Fontaine --- src/basic/capability-util.c | 1 + src/test/test-capability.c | 1 + src/test/test-execute.c | 1 + 3 files changed, 3 insertions(+) diff --git a/src/basic/capability-util.c b/src/basic/capability-util.c index a3f3ca9f52..b944ee6ea1 100644 --- a/src/basic/capability-util.c +++ b/src/basic/capability-util.c @@ -13,6 +13,7 @@ #include "fileio.h" #include "log.h" #include "macro.h" +#include "missing_prctl.h" #include "parse-util.h" #include "user-util.h" #include "util.h" diff --git a/src/test/test-capability.c b/src/test/test-capability.c index dae85f2f91..325d7c8cc2 100644 --- a/src/test/test-capability.c +++ b/src/test/test-capability.c @@ -13,6 +13,7 @@ #include "fd-util.h" #include "fileio.h" #include "macro.h" +#include "missing_prctl.h" #include "parse-util.h" #include "tests.h" #include "util.h" diff --git a/src/test/test-execute.c b/src/test/test-execute.c index 2115061add..cea68b8cfe 100644 --- a/src/test/test-execute.c +++ b/src/test/test-execute.c @@ -13,6 +13,7 @@ #include "fs-util.h" #include "macro.h" #include "manager.h" +#include "missing_prctl.h" #include "mkdir.h" #include "path-util.h" #include "rm-rf.h" From 3ee57870d6c6291d9f5b8757ee4b4f512e238dc7 Mon Sep 17 00:00:00 2001 From: Fabrice Fontaine Date: Fri, 11 Jan 2019 16:36:06 +0100 Subject: [PATCH 2/5] basic/tmpfile-util.c: fix build without O_TMPFILE systemd fails to build on kernel without O_TMPFILE (< 3.11) since https://github.com/systemd/systemd/commit/dea72eda9cdbfeedd24cbe8c734ad0639bf96cde To fix this error, include missing_fcntl.h Fixes: - http://autobuild.buildroot.org/results/699c078aa078240c6741da4dbd0871450ceeca92 Signed-off-by: Fabrice Fontaine --- src/basic/tmpfile-util.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/basic/tmpfile-util.c b/src/basic/tmpfile-util.c index 669eb2666c..bc92d6a6de 100644 --- a/src/basic/tmpfile-util.c +++ b/src/basic/tmpfile-util.c @@ -8,6 +8,7 @@ #include "hexdecoct.h" #include "macro.h" #include "memfd-util.h" +#include "missing_fcntl.h" #include "missing_syscall.h" #include "path-util.h" #include "process-util.h" From 6a9eb11b8a219bc1e32ba85391034ed367b30972 Mon Sep 17 00:00:00 2001 From: Fabrice Fontaine Date: Fri, 11 Jan 2019 17:08:48 +0100 Subject: [PATCH 3/5] missing_if_link.h: add IFLA_BOND_MODE systemd fails to build on kernel without IFLA_BOND_MODE (< 3.13) since https://github.com/systemd/systemd/commit/9714c020fc4cda1823c2a77e3fd08aefa7d78b25 So put back IFLA_BOND_MODE definition Fixes: - http://autobuild.buildroot.org/results/699c078aa078240c6741da4dbd0871450ceeca92 Signed-off-by: Fabrice Fontaine --- meson.build | 1 + src/basic/missing_if_link.h | 3 +++ 2 files changed, 4 insertions(+) diff --git a/meson.build b/meson.build index 623c1ad6b3..011e449806 100644 --- a/meson.build +++ b/meson.build @@ -476,6 +476,7 @@ foreach decl : [['ETHTOOL_LINK_MODE_10baseT_Half_BIT', 'linux/ethtool.h'], ['IFLA_TARGET_NETNSID', 'linux/if_link.h'], ['IFLA_NEW_IFINDEX', 'linux/if_link.h'], ['IFLA_MAX_MTU', 'linux/if_link.h'], + ['IFLA_BOND_MODE', 'linux/if_link.h'], ['IFLA_BOND_ACTIVE_SLAVE', 'linux/if_link.h'], ['IFLA_BOND_AD_INFO', 'linux/if_link.h'], ['IFLA_BOND_AD_ACTOR_SYSTEM', 'linux/if_link.h'], diff --git a/src/basic/missing_if_link.h b/src/basic/missing_if_link.h index 07675426bb..761797f56a 100644 --- a/src/basic/missing_if_link.h +++ b/src/basic/missing_if_link.h @@ -110,6 +110,9 @@ enum ipvlan_mode { #define IFLA_MAX 51 #endif +#if !HAVE_IFLA_BOND_MODE /* linux@90af231106c0b8d223c27d35464af95cb3d9cacf (3.13) */ +#define IFLA_BOND_MODE 1 +#endif #if !HAVE_IFLA_BOND_ACTIVE_SLAVE /* linux@ec76aa49855f6d6fea5e01de179fb57dd47c619d (3.13) */ #define IFLA_BOND_ACTIVE_SLAVE 2 #endif From e2d94d0c160227c1870f7bd057beac6f635bd2a3 Mon Sep 17 00:00:00 2001 From: Fabrice Fontaine Date: Fri, 11 Jan 2019 17:24:21 +0100 Subject: [PATCH 4/5] missing_syscall.h: include errno.h This include is needed for errno and ENOSYS Fixes: - http://autobuild.buildroot.org/results/699c078aa078240c6741da4dbd0871450ceeca92 Signed-off-by: Fabrice Fontaine --- src/basic/missing_syscall.h | 1 + 1 file changed, 1 insertion(+) diff --git a/src/basic/missing_syscall.h b/src/basic/missing_syscall.h index d5d4b26acb..d1aa32218b 100644 --- a/src/basic/missing_syscall.h +++ b/src/basic/missing_syscall.h @@ -3,6 +3,7 @@ /* Missing glibc definitions to access certain kernel APIs */ +#include #include #include #include From 5269db454fe00258203f1b7003681ef7d9749809 Mon Sep 17 00:00:00 2001 From: Fabrice Fontaine Date: Fri, 11 Jan 2019 17:30:32 +0100 Subject: [PATCH 5/5] lockfile-util.c: fix build without F_OFD_SETLK systemd fails to build on kernel without F_OFD_SETLK since https://github.com/systemd/systemd/commit/9714c020fc4cda1823c2a77e3fd08aefa7d78b25 So put include missing_fcntl.h Fixes: - http://autobuild.buildroot.org/results/699c078aa078240c6741da4dbd0871450ceeca92 Signed-off-by: Fabrice Fontaine --- src/shared/lockfile-util.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/shared/lockfile-util.c b/src/shared/lockfile-util.c index 4bae23b243..260c2088d5 100644 --- a/src/shared/lockfile-util.c +++ b/src/shared/lockfile-util.c @@ -12,6 +12,7 @@ #include "fs-util.h" #include "lockfile-util.h" #include "macro.h" +#include "missing_fcntl.h" #include "path-util.h" int make_lock_file(const char *p, int operation, LockFile *ret) {