From 140fc306315f29ea2fa15c6b9beb4dffc4cf65ff Mon Sep 17 00:00:00 2001 From: Elliott Hughes Date: Fri, 29 Apr 2022 12:17:37 -0700 Subject: [PATCH] seccomp: allow stat() for ubsan. We've had complaints about ubsan issues for years, but never got to the bottom of them, or saw them ourselves in testing. For some reason (still not understood) we've started to see this ourselves in T and downstream branches. So for now, let's just punch that extra hole. Longer term, ubsan should stop needing any of this, so once https://reviews.llvm.org/D124212 is in an LTS NDK, we should be able to get rid of this _and_ the existing sanitizer-related holes. Bug: https://github.com/android/ndk/issues/1298 Bug: http://b/229989971 Test: treehugger Change-Id: Id42cb29c4e943c0080c0d34ce4e5d6d1b32da9e8 (cherry picked from commit a0745cea5f8510c6bb53dfda16dcba9cca0905d1) Merged-In: Id42cb29c4e943c0080c0d34ce4e5d6d1b32da9e8 --- libc/SECCOMP_ALLOWLIST_COMMON.TXT | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libc/SECCOMP_ALLOWLIST_COMMON.TXT b/libc/SECCOMP_ALLOWLIST_COMMON.TXT index c440f9b747..0366fdf0fd 100644 --- a/libc/SECCOMP_ALLOWLIST_COMMON.TXT +++ b/libc/SECCOMP_ALLOWLIST_COMMON.TXT @@ -31,6 +31,8 @@ int seccomp:seccomp(unsigned int operation, unsigned int flags, void *args) all int open:open(const char*, int, ...) arm,x86,x86_64 int stat64:stat64(const char*, struct stat64*) arm,x86 ssize_t readlink:readlink(const char*, char*, size_t) arm,x86,x86_64 +# Needed by ubsan in T? (http://b/229989971) +int stat(const char*, struct stat*) arm,x86,x86_64 # # Useful new syscalls which we don't yet use in bionic.