From db259d8fd369e6036df782d5fe51723a68220074 Mon Sep 17 00:00:00 2001 From: Philipp Stephani Date: Fri, 15 Jul 2022 17:56:02 +0200 Subject: [PATCH] Build Seccomp filter only if we have a 64-bit userspace (Bug#56549) * configure.ac (SIZEOF_LONG): New variable. * lib-src/Makefile.in (SIZEOF_LONG): New variable; added conditional. --- configure.ac | 4 ++++ lib-src/Makefile.in | 3 +++ 2 files changed, 7 insertions(+) diff --git a/configure.ac b/configure.ac index 312243a41cf..741a1a31df5 100644 --- a/configure.ac +++ b/configure.ac @@ -4380,6 +4380,10 @@ AC_SUBST([HAVE_LIBSECCOMP]) AC_SUBST([LIBSECCOMP_LIBS]) AC_SUBST([LIBSECCOMP_CFLAGS]) +AC_CHECK_SIZEOF([long]) +SIZEOF_LONG="$ac_cv_sizeof_long" +AC_SUBST([SIZEOF_LONG]) + OLD_LIBS=$LIBS LIBS="$LIB_PTHREAD $LIB_MATH $LIBS" AC_CHECK_FUNCS(accept4 fchdir gethostname \ diff --git a/lib-src/Makefile.in b/lib-src/Makefile.in index 338ba0d5767..92487edce73 100644 --- a/lib-src/Makefile.in +++ b/lib-src/Makefile.in @@ -196,11 +196,13 @@ HAVE_SECCOMP=@HAVE_SECCOMP@ HAVE_LIBSECCOMP=@HAVE_LIBSECCOMP@ LIBSECCOMP_LIBS=@LIBSECCOMP_LIBS@ LIBSECCOMP_CFLAGS=@LIBSECCOMP_CFLAGS@ +SIZEOF_LONG=@SIZEOF_LONG@ # Currently, we can only generate seccomp filter files for x86-64. ifeq ($(HAVE_SECCOMP),yes) ifeq ($(HAVE_LIBSECCOMP),yes) ifeq ($(shell uname -m),x86_64) +ifeq ($(SIZEOF_LONG),8) # We require SECCOMP_RET_KILL_PROCESS, which is only available in # Linux 4.14 and later. ifeq ($(shell { echo 4.14; uname -r | cut -d . -f 1-2; } | \ @@ -211,6 +213,7 @@ endif endif endif endif +endif ifeq ($(SECCOMP_FILTER),1) DONT_INSTALL += seccomp-filter$(EXEEXT) -- 2.39.2