diff options
author | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2019-04-03 12:36:03 +0200 |
---|---|---|
committer | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2019-04-03 13:24:43 +0200 |
commit | dff6c6295b1cb09d6da8ab054e66059e43247ab1 (patch) | |
tree | d4e0123c0de5e6995b703b64bc959b65d15526c4 | |
parent | build-sys: bump package version (diff) | |
download | systemd-dff6c6295b1cb09d6da8ab054e66059e43247ab1.tar.xz systemd-dff6c6295b1cb09d6da8ab054e66059e43247ab1.zip |
test-seccomp: fix compilation on arm64
It has no open().
-rw-r--r-- | src/test/test-seccomp.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/test/test-seccomp.c b/src/test/test-seccomp.c index 8efbecbeff..9b7307cf39 100644 --- a/src/test/test-seccomp.c +++ b/src/test/test-seccomp.c @@ -7,6 +7,7 @@ #include <sys/mman.h> #include <sys/personality.h> #include <sys/shm.h> +#include <sys/syscall.h> #include <sys/types.h> #include <unistd.h> @@ -763,9 +764,14 @@ static void test_lock_personality(void) { static int real_open(const char *path, int flags, mode_t mode) { /* glibc internally calls openat() when open() is requested. Let's hence define our own wrapper for - * testing purposes that calls the real syscall. */ + * testing purposes that calls the real syscall, on architectures where SYS_open is defined. On + * other architectures, let's just fall back to the glibc call. */ +#ifdef SYS_open return (int) syscall(SYS_open, path, flags, mode); +#else + return open(path, flags, mode); +#endif } static void test_restrict_suid_sgid(void) { |