Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Android/bionic/bionic/libc/   (Android Betriebssystem Version 17©)  Datei vom 26.5.2026 mit Größe 5 kB image not shown  

Quelle  SECCOMP_ALLOWLIST_COMMON.TXT

  Sprache: Text
 

# This file is used to populate seccomp's allowlist policy in combination with SYSCALLS.TXT.
# Note that the resultant policy is applied only to zygote spawned processes.
#
# This file is processed by a python script named genseccomp.py.

# These are the syscalls that are currently still multiplexed through socketcall(2) for x86.
# We put them here for the convenience of anyone who wants to transition early,
# or rewrite socketcall() invocations as the individual syscalls.
# TODO: remove these when the socketcall transition is complete
socket(int, int, int) x86
socketpair(int, int, int, int*) x86
connect(int, sockaddr*, socklen_t) x86
sendto(int, const void*, size_t, int, const sockaddr*, socklen_t) x86
recvfrom(int, void*, size_t, unsigned int, sockaddr*, socklen_t*) x86
setsockopt(int, int, int, const void*, socklen_t) x86
getsockopt(int, int, int, void*, socklen_t*) x86
recvmsg(int, msghdr*, unsigned int) x86
sendmsg(int, const msghdr*, unsigned int) x86

# Syscalls needed to boot android
pivot_root(const char*, const char*) lp64
ioprio_get(int, int) lp64
ioprio_set(int, int, int) lp64

# Syscalls used internally by bionic, but not exposed directly.
gettid() all
futex(int*, int, int, const timespec*, int*, int) all
clone(int (*)(void*), void*, int, void*, ...) all
sigreturn(unsigned long) lp32
rt_sigreturn(unsigned long) all
rt_tgsigqueueinfo(pid_t, pid_t, int, siginfo_t*) all
restart_syscall() all

# The public API doesn't set errno, so we call this via inline assembler.
riscv_hwprobe(riscv_hwprobe*, size_t, size_t, unsigned long*, unsigned) riscv64

# vfork is used by bionic (and java.lang.ProcessBuilder) on some
# architectures. (The others use clone(2) directly instead.)
vfork() arm,x86,x86_64

# Needed for performance tools.
perf_event_open(perf_event_attr*, pid_t, int, int, unsigned long) all

# Needed for strace.
tkill(int, int) all

# Needed for a CTS test of seccomp (b/34763393).
seccomp(unsigned, unsigned, void*) all

# TODO: remove these now we've updated the toolchain (http://b/229989971).
open(const char*, int, ...)  arm,x86,x86_64
stat64(const char*, stat64*)  arm,x86
readlink(const char*, char*, size_t)  arm,x86,x86_64
stat(const char*, stat*)  arm,x86,x86_64

#
# (Potentially) useful new syscalls which we don't yet use in bionic.
#

# Since Linux 2.5, not in glibc.
io_setup(unsigned, aio_context_t*) all
io_destroy(aio_context_t) all
io_submit(aio_context_t, long,  iocb**) all
io_getevents(aio_context_t, long, long, io_event*, timespec*) all
io_cancel(aio_context_t, iocb*, io_event*) all
# Since Linux 3.19, not in glibc (and not really needed to implement fexecve).
execveat(int, const char*, char* const*, char* const*, int)  all
# Since Linux 4.3, not in glibc. Probed for and conditionally used by ART.
membarrier(int, int) all
userfaultfd(int) all
# Since Linux 5.1, not in glibc. Not used by bionic, and not likely ever
# to be (because the last thing anyone needs is a new 32-bit ABI in the
2020s!) but http://b/138781460 showed cuttlefish needed at least the
# clock_gettime64 syscall.
clock_gettime64(clockid_t, timespec64*) lp32
clock_settime64(clockid_t, const timespec64*) lp32
clock_adjtime64(clockid_t, timex64*) lp32
clock_getres_time64(clockid_t, timespec64*) lp32
clock_nanosleep_time64(clockid_t, int, const timespec64*, timespec*) lp32
timer_gettime64(__kernel_timer_t, itimerspec64*) lp32
timer_settime64(__kernel_timer_t, int, const itimerspec64*, itimerspec64*) lp32
timerfd_gettime64(int, itimerspec64*) lp32
timerfd_settime64(int, int, const itimerspec64*, itimerspec64*) lp32
utimensat_time64(int, const char*, const timespec64[2], int) lp32
pselect6_time64(int, fd_set*, fd_set*, timespec64*, void*) lp32
ppoll_time64(pollfd*, unsigned int, timespec64*, const sigset64_t*, size_t) lp32
recvmmsg_time64(int, mmsghdr*, unsigned int, int, const timespec64*) lp32
rt_sigtimedwait_time64(const sigset64_t*, siginfo_t*, const timespec64*, size_t) lp32
futex_time64(int*, int, int, const timespec64*, int*, int) lp32
sched_rr_get_interval_time64(pid_t, timespec64*) lp32
# Since Linux 5.3, not in glibc. Not used by bionic, but increasingly
# likely to be useful as new features are added. In particular, cgroups
# support seems potentially useful for Android (though the struct that
# changes size over time is obviously problematic).
clone3(clone_args*, size_t) all
# Since Linux 5.6, not in glibc (but coming to 2.42?). http://b/371578624
openat2(int, const char*, open_how*, size_t) all
# Since Linux 5.8, not in glibc. Commonly requested to reimplement faccessat()
# for better source compatibility, but tricky to retcon into all the seccomp filters.
faccessat2(int, const char*, int, int) all
# Since Linux 5.13, not in glibc. Probed for and conditionally used by
# Chrome GPU processes.
landlock_add_rule(int, uint64_t, const void*, uint32_t) all
landlock_create_ruleset(const landlock_ruleset_attr*, size_t, uint64_t) all
landlock_restrict_self(int, uint64_t) all
# Since Linux 6.6, not in glibc. Common requested to reimplement fchmodat()
# for better source compatibility, but tricky to retcon into all the seccomp filters.
fchmodat2(int, const char*, mode_t, int) all
# Since Linux 6.13, not in glibc.
setxattrat(int, const char*, unsigned, const char*, const xattr_args*, size_t) all
getxattrat(int, const char*, unsigned, const char*, xattr_args*, size_t) all
listxattrat(int, const char*, unsigned, char*, size_t) all
removexattrat(int, const char*, unsigned, const char*) all

Messung V0.5 in Prozent
C=86 H=96 G=90

¤ Dauer der Verarbeitung: 0.11 Sekunden  (vorverarbeitet am  2026-06-28) ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

PVS Prover

Isabelle Prover

NIST Cobol Testsuite

Cephes Mathematical Library

Vienna Development Method

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.