[lxc-devel] [PATCH 1/1] seccomp: don't support v2 if seccomp_syscall_resolve_name_arch is not avilable
Serge Hallyn
serge.hallyn at ubuntu.com
Wed Feb 12 23:20:22 UTC 2014
Also don't use arm arch if not defined
This *should* fix build so precise, but I didn't fire one off.
I did test that builds with libseccomp2 still work as expected.
Signed-off-by: Serge Hallyn <serge.hallyn at ubuntu.com>
---
configure.ac | 1 +
src/lxc/seccomp.c | 6 +++++-
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/configure.ac b/configure.ac
index 21e6046..eb7b32f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -274,6 +274,7 @@ AM_COND_IF([ENABLE_CAP],
OLD_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS $SECCOMP_CFLAGS"
AC_CHECK_TYPES([scmp_filter_ctx], [], [], [[#include <seccomp.h>]])
+AC_CHECK_DECLS([seccomp_syscall_resolve_name_arch], [], [], [[#include <seccomp.h>]])
CFLAGS="$OLD_CFLAGS"
# Configuration examples
diff --git a/src/lxc/seccomp.c b/src/lxc/seccomp.c
index 4c01be7..d75defe 100644
--- a/src/lxc/seccomp.c
+++ b/src/lxc/seccomp.c
@@ -57,6 +57,7 @@ static int parse_config_v1(FILE *f, struct lxc_conf *conf)
return 0;
}
+#if HAVE_DECL_SECCOMP_SYSCALL_RESOLVE_NAME_ARCH
static void remove_trailing_newlines(char *l)
{
char *p = l;
@@ -109,6 +110,7 @@ static uint32_t get_and_clear_v2_action(char *line, uint32_t def_action)
default: return ret;
}
}
+#endif
/*
* v2 consists of
@@ -126,7 +128,7 @@ static uint32_t get_and_clear_v2_action(char *line, uint32_t def_action)
*/
static int parse_config_v2(FILE *f, char *line, struct lxc_conf *conf)
{
-#if HAVE_SCMP_FILTER_CTX
+#if HAVE_DECL_SECCOMP_SYSCALL_RESOLVE_NAME_ARCH
char *p;
int ret;
scmp_filter_ctx *ctx = NULL;
@@ -189,9 +191,11 @@ static int parse_config_v2(FILE *f, char *line, struct lxc_conf *conf)
else if (strcmp(line, "[X86_64]") == 0 ||
strcmp(line, "[x86_64]") == 0)
arch = SCMP_ARCH_X86_64;
+#ifdef SCMP_ARCH_ARM
else if (strcmp(line, "[arm]") == 0 ||
strcmp(line, "[ARM]") == 0)
arch = SCMP_ARCH_ARM;
+#endif
else
goto bad_arch;
if (ctx) {
--
1.9.rc1
More information about the lxc-devel
mailing list