diff options
author | Damien Miller <djm@mindrot.org> | 2020-07-17 13:15:50 +1000 |
---|---|---|
committer | Damien Miller <djm@mindrot.org> | 2020-07-17 13:21:56 +1000 |
commit | 5b56bd0affea7b02b540bdbc4d1d271b0e4fc885 (patch) | |
tree | 6dafe750a646cb9f69ae8161f9d0a73e54bdda98 | |
parent | 9c9ddc1391d6af8d09580a2424ab467d0a5df3c7 (diff) |
detect Linux/X32 systems
This is a frankenstein monster of AMD64 instructions/calling conventions
but with a 4GB address space. Allegedly deprecated but people still run
into it causing weird sandbox failures, e.g. bz#3085
-rw-r--r-- | configure.ac | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac index c03db2732..ff7417354 100644 --- a/configure.ac +++ b/configure.ac | |||
@@ -522,6 +522,8 @@ SPP_MSG="no" | |||
522 | # the --with-solaris-privs option and --with-sandbox=solaris). | 522 | # the --with-solaris-privs option and --with-sandbox=solaris). |
523 | SOLARIS_PRIVS="no" | 523 | SOLARIS_PRIVS="no" |
524 | 524 | ||
525 | AC_CHECK_SIZEOF([size_t]) | ||
526 | |||
525 | # Check for some target-specific stuff | 527 | # Check for some target-specific stuff |
526 | case "$host" in | 528 | case "$host" in |
527 | *-*-aix*) | 529 | *-*-aix*) |
@@ -864,6 +866,10 @@ main() { if (NSVersionOfRunTimeLibrary("System") >= (60 << 16)) | |||
864 | case "$host" in | 866 | case "$host" in |
865 | x86_64-*) | 867 | x86_64-*) |
866 | seccomp_audit_arch=AUDIT_ARCH_X86_64 | 868 | seccomp_audit_arch=AUDIT_ARCH_X86_64 |
869 | # X32: AMD64 instructions in 32bit address space. | ||
870 | if test "x$ac_cv_sizeof_size_t" = "x4" ; then | ||
871 | seccomp_audit_arch=AUDIT_ARCH_I386 | ||
872 | fi | ||
867 | ;; | 873 | ;; |
868 | i*86-*) | 874 | i*86-*) |
869 | seccomp_audit_arch=AUDIT_ARCH_I386 | 875 | seccomp_audit_arch=AUDIT_ARCH_I386 |