1// Copyright 2014 The Chromium Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5// Sanitizers internally use some syscalls which non-SFI NaCl disallows. 6#if !defined(ADDRESS_SANITIZER) && !defined(THREAD_SANITIZER) && \ 7 !defined(MEMORY_SANITIZER) && !defined(LEAK_SANITIZER) 8 9#include "components/nacl/loader/nonsfi/nonsfi_sandbox.h" 10 11#include <sys/syscall.h> 12#include <unistd.h> 13 14#include "sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.h" 15#include "sandbox/linux/seccomp-bpf/bpf_tests.h" 16 17namespace { 18 19// Test cases in this file just make sure not-whitelisted syscalls 20// are appropriately disallowed. They should raise SIGSYS regardless 21// of arguments. We always pass five zeros not to pass uninitialized 22// values to syscalls. 23#define RESTRICT_SYSCALL_DEATH_TEST_IMPL(name, sysno) \ 24 BPF_DEATH_TEST_C(NaClNonSfiSandboxSIGSYSTest, \ 25 name, \ 26 DEATH_MESSAGE(sandbox::GetErrorMessageContentForTests()), \ 27 nacl::nonsfi::NaClNonSfiBPFSandboxPolicy) { \ 28 syscall(sysno, 0, 0, 0, 0, 0, 0); \ 29 } 30 31#define RESTRICT_SYSCALL_DEATH_TEST(name) \ 32 RESTRICT_SYSCALL_DEATH_TEST_IMPL(name, __NR_ ## name) 33 34#define RESTRICT_ARM_SYSCALL_DEATH_TEST(name) \ 35 RESTRICT_SYSCALL_DEATH_TEST_IMPL(ARM_ ## name, __ARM_NR_ ## name) 36 37#if defined(__i386__) || defined(__arm__) 38RESTRICT_SYSCALL_DEATH_TEST(_newselect); 39#endif 40RESTRICT_SYSCALL_DEATH_TEST(_sysctl); 41#if defined(__x86_64__) || defined(__arm__) 42RESTRICT_SYSCALL_DEATH_TEST(accept); 43#endif 44#if defined(__x86_64__) || defined(__arm__) 45RESTRICT_SYSCALL_DEATH_TEST(accept4); 46#endif 47RESTRICT_SYSCALL_DEATH_TEST(access); 48RESTRICT_SYSCALL_DEATH_TEST(acct); 49RESTRICT_SYSCALL_DEATH_TEST(add_key); 50RESTRICT_SYSCALL_DEATH_TEST(adjtimex); 51#if defined(__i386__) || defined(__x86_64__) 52RESTRICT_SYSCALL_DEATH_TEST(afs_syscall); 53#endif 54#if defined(__i386__) || defined(__x86_64__) 55RESTRICT_SYSCALL_DEATH_TEST(alarm); 56#endif 57#if defined(__x86_64__) 58RESTRICT_SYSCALL_DEATH_TEST(arch_prctl); 59#endif 60#if defined(__arm__) 61RESTRICT_SYSCALL_DEATH_TEST(arm_fadvise64_64); 62#endif 63#if defined(__i386__) || defined(__arm__) 64RESTRICT_SYSCALL_DEATH_TEST(bdflush); 65#endif 66#if defined(__x86_64__) || defined(__arm__) 67RESTRICT_SYSCALL_DEATH_TEST(bind); 68#endif 69#if defined(__i386__) 70RESTRICT_SYSCALL_DEATH_TEST(break); 71#endif 72RESTRICT_SYSCALL_DEATH_TEST(capget); 73RESTRICT_SYSCALL_DEATH_TEST(capset); 74RESTRICT_SYSCALL_DEATH_TEST(chdir); 75RESTRICT_SYSCALL_DEATH_TEST(chmod); 76RESTRICT_SYSCALL_DEATH_TEST(chown); 77#if defined(__i386__) || defined(__arm__) 78RESTRICT_SYSCALL_DEATH_TEST(chown32); 79#endif 80RESTRICT_SYSCALL_DEATH_TEST(chroot); 81RESTRICT_SYSCALL_DEATH_TEST(clock_adjtime); 82RESTRICT_SYSCALL_DEATH_TEST(clock_nanosleep); 83RESTRICT_SYSCALL_DEATH_TEST(clock_settime); 84#if defined(__x86_64__) || defined(__arm__) 85RESTRICT_SYSCALL_DEATH_TEST(connect); 86#endif 87RESTRICT_SYSCALL_DEATH_TEST(creat); 88#if defined(__i386__) || defined(__x86_64__) 89RESTRICT_SYSCALL_DEATH_TEST(create_module); 90#endif 91RESTRICT_SYSCALL_DEATH_TEST(delete_module); 92RESTRICT_SYSCALL_DEATH_TEST(dup3); 93RESTRICT_SYSCALL_DEATH_TEST(epoll_create1); 94RESTRICT_SYSCALL_DEATH_TEST(epoll_ctl); 95#if defined(__x86_64__) 96RESTRICT_SYSCALL_DEATH_TEST(epoll_ctl_old); 97#endif 98RESTRICT_SYSCALL_DEATH_TEST(epoll_pwait); 99RESTRICT_SYSCALL_DEATH_TEST(epoll_wait); 100#if defined(__x86_64__) 101RESTRICT_SYSCALL_DEATH_TEST(epoll_wait_old); 102#endif 103RESTRICT_SYSCALL_DEATH_TEST(eventfd); 104RESTRICT_SYSCALL_DEATH_TEST(eventfd2); 105RESTRICT_SYSCALL_DEATH_TEST(execve); 106RESTRICT_SYSCALL_DEATH_TEST(faccessat); 107#if defined(__i386__) || defined(__x86_64__) 108RESTRICT_SYSCALL_DEATH_TEST(fadvise64); 109#endif 110#if defined(__i386__) 111RESTRICT_SYSCALL_DEATH_TEST(fadvise64_64); 112#endif 113RESTRICT_SYSCALL_DEATH_TEST(fallocate); 114RESTRICT_SYSCALL_DEATH_TEST(fanotify_init); 115RESTRICT_SYSCALL_DEATH_TEST(fanotify_mark); 116RESTRICT_SYSCALL_DEATH_TEST(fchdir); 117RESTRICT_SYSCALL_DEATH_TEST(fchmod); 118RESTRICT_SYSCALL_DEATH_TEST(fchmodat); 119RESTRICT_SYSCALL_DEATH_TEST(fchown); 120#if defined(__i386__) || defined(__arm__) 121RESTRICT_SYSCALL_DEATH_TEST(fchown32); 122#endif 123RESTRICT_SYSCALL_DEATH_TEST(fchownat); 124#if defined(__i386__) || defined(__arm__) 125RESTRICT_SYSCALL_DEATH_TEST(fcntl); 126#endif 127RESTRICT_SYSCALL_DEATH_TEST(fdatasync); 128RESTRICT_SYSCALL_DEATH_TEST(fgetxattr); 129RESTRICT_SYSCALL_DEATH_TEST(flistxattr); 130RESTRICT_SYSCALL_DEATH_TEST(flock); 131RESTRICT_SYSCALL_DEATH_TEST(fork); 132RESTRICT_SYSCALL_DEATH_TEST(fremovexattr); 133RESTRICT_SYSCALL_DEATH_TEST(fsetxattr); 134#if defined(__i386__) || defined(__arm__) 135RESTRICT_SYSCALL_DEATH_TEST(fstat); 136#endif 137#if defined(__i386__) || defined(__arm__) 138RESTRICT_SYSCALL_DEATH_TEST(fstatat64); 139#endif 140RESTRICT_SYSCALL_DEATH_TEST(fstatfs); 141#if defined(__i386__) || defined(__arm__) 142RESTRICT_SYSCALL_DEATH_TEST(fstatfs64); 143#endif 144RESTRICT_SYSCALL_DEATH_TEST(fsync); 145#if defined(__i386__) 146RESTRICT_SYSCALL_DEATH_TEST(ftime); 147#endif 148RESTRICT_SYSCALL_DEATH_TEST(ftruncate); 149#if defined(__i386__) || defined(__arm__) 150RESTRICT_SYSCALL_DEATH_TEST(ftruncate64); 151#endif 152RESTRICT_SYSCALL_DEATH_TEST(futimesat); 153#if defined(__i386__) || defined(__x86_64__) 154RESTRICT_SYSCALL_DEATH_TEST(get_kernel_syms); 155#endif 156RESTRICT_SYSCALL_DEATH_TEST(get_mempolicy); 157RESTRICT_SYSCALL_DEATH_TEST(get_robust_list); 158#if defined(__i386__) || defined(__x86_64__) 159RESTRICT_SYSCALL_DEATH_TEST(get_thread_area); 160#endif 161RESTRICT_SYSCALL_DEATH_TEST(getcpu); 162RESTRICT_SYSCALL_DEATH_TEST(getcwd); 163RESTRICT_SYSCALL_DEATH_TEST(getdents); 164RESTRICT_SYSCALL_DEATH_TEST(getdents64); 165RESTRICT_SYSCALL_DEATH_TEST(getgroups); 166#if defined(__i386__) || defined(__arm__) 167RESTRICT_SYSCALL_DEATH_TEST(getgroups32); 168#endif 169RESTRICT_SYSCALL_DEATH_TEST(getitimer); 170#if defined(__x86_64__) || defined(__arm__) 171RESTRICT_SYSCALL_DEATH_TEST(getpeername); 172#endif 173RESTRICT_SYSCALL_DEATH_TEST(getpgid); 174RESTRICT_SYSCALL_DEATH_TEST(getpgrp); 175RESTRICT_SYSCALL_DEATH_TEST(getpid); 176#if defined(__i386__) || defined(__x86_64__) 177RESTRICT_SYSCALL_DEATH_TEST(getpmsg); 178#endif 179RESTRICT_SYSCALL_DEATH_TEST(getppid); 180RESTRICT_SYSCALL_DEATH_TEST(getpriority); 181RESTRICT_SYSCALL_DEATH_TEST(getresgid); 182#if defined(__i386__) || defined(__arm__) 183RESTRICT_SYSCALL_DEATH_TEST(getresgid32); 184#endif 185RESTRICT_SYSCALL_DEATH_TEST(getresuid); 186#if defined(__i386__) || defined(__arm__) 187RESTRICT_SYSCALL_DEATH_TEST(getresuid32); 188#endif 189#if defined(__i386__) || defined(__x86_64__) 190RESTRICT_SYSCALL_DEATH_TEST(getrlimit); 191#endif 192RESTRICT_SYSCALL_DEATH_TEST(getrusage); 193RESTRICT_SYSCALL_DEATH_TEST(getsid); 194#if defined(__x86_64__) || defined(__arm__) 195RESTRICT_SYSCALL_DEATH_TEST(getsockname); 196#endif 197#if defined(__x86_64__) || defined(__arm__) 198RESTRICT_SYSCALL_DEATH_TEST(getsockopt); 199#endif 200RESTRICT_SYSCALL_DEATH_TEST(getxattr); 201#if defined(__i386__) 202RESTRICT_SYSCALL_DEATH_TEST(gtty); 203#endif 204#if defined(__i386__) 205RESTRICT_SYSCALL_DEATH_TEST(idle); 206#endif 207RESTRICT_SYSCALL_DEATH_TEST(init_module); 208RESTRICT_SYSCALL_DEATH_TEST(inotify_add_watch); 209RESTRICT_SYSCALL_DEATH_TEST(inotify_init); 210RESTRICT_SYSCALL_DEATH_TEST(inotify_init1); 211RESTRICT_SYSCALL_DEATH_TEST(inotify_rm_watch); 212RESTRICT_SYSCALL_DEATH_TEST(io_cancel); 213RESTRICT_SYSCALL_DEATH_TEST(io_destroy); 214RESTRICT_SYSCALL_DEATH_TEST(io_getevents); 215RESTRICT_SYSCALL_DEATH_TEST(io_setup); 216RESTRICT_SYSCALL_DEATH_TEST(io_submit); 217RESTRICT_SYSCALL_DEATH_TEST(ioctl); 218#if defined(__i386__) || defined(__x86_64__) 219RESTRICT_SYSCALL_DEATH_TEST(ioperm); 220#endif 221#if defined(__i386__) || defined(__x86_64__) 222RESTRICT_SYSCALL_DEATH_TEST(iopl); 223#endif 224RESTRICT_SYSCALL_DEATH_TEST(ioprio_get); 225RESTRICT_SYSCALL_DEATH_TEST(ioprio_set); 226#if defined(__i386__) 227RESTRICT_SYSCALL_DEATH_TEST(ipc); 228#endif 229RESTRICT_SYSCALL_DEATH_TEST(kexec_load); 230RESTRICT_SYSCALL_DEATH_TEST(keyctl); 231RESTRICT_SYSCALL_DEATH_TEST(kill); 232RESTRICT_SYSCALL_DEATH_TEST(lchown); 233#if defined(__i386__) || defined(__arm__) 234RESTRICT_SYSCALL_DEATH_TEST(lchown32); 235#endif 236RESTRICT_SYSCALL_DEATH_TEST(lgetxattr); 237RESTRICT_SYSCALL_DEATH_TEST(link); 238RESTRICT_SYSCALL_DEATH_TEST(linkat); 239#if defined(__x86_64__) || defined(__arm__) 240RESTRICT_SYSCALL_DEATH_TEST(listen); 241#endif 242RESTRICT_SYSCALL_DEATH_TEST(listxattr); 243RESTRICT_SYSCALL_DEATH_TEST(llistxattr); 244#if defined(__i386__) 245RESTRICT_SYSCALL_DEATH_TEST(lock); 246#endif 247RESTRICT_SYSCALL_DEATH_TEST(lookup_dcookie); 248RESTRICT_SYSCALL_DEATH_TEST(lremovexattr); 249#if defined(__i386__) || defined(__arm__) 250RESTRICT_SYSCALL_DEATH_TEST(lseek); 251#endif 252RESTRICT_SYSCALL_DEATH_TEST(lsetxattr); 253RESTRICT_SYSCALL_DEATH_TEST(lstat); 254#if defined(__i386__) || defined(__arm__) 255RESTRICT_SYSCALL_DEATH_TEST(lstat64); 256#endif 257RESTRICT_SYSCALL_DEATH_TEST(mbind); 258#if defined(__i386__) || defined(__x86_64__) 259RESTRICT_SYSCALL_DEATH_TEST(migrate_pages); 260#endif 261RESTRICT_SYSCALL_DEATH_TEST(mincore); 262RESTRICT_SYSCALL_DEATH_TEST(mkdir); 263RESTRICT_SYSCALL_DEATH_TEST(mkdirat); 264RESTRICT_SYSCALL_DEATH_TEST(mknod); 265RESTRICT_SYSCALL_DEATH_TEST(mknodat); 266RESTRICT_SYSCALL_DEATH_TEST(mlock); 267RESTRICT_SYSCALL_DEATH_TEST(mlockall); 268#if defined(__i386__) 269RESTRICT_SYSCALL_DEATH_TEST(mmap); 270#endif 271#if defined(__i386__) || defined(__x86_64__) 272RESTRICT_SYSCALL_DEATH_TEST(modify_ldt); 273#endif 274RESTRICT_SYSCALL_DEATH_TEST(mount); 275RESTRICT_SYSCALL_DEATH_TEST(move_pages); 276#if defined(__i386__) 277RESTRICT_SYSCALL_DEATH_TEST(mpx); 278#endif 279RESTRICT_SYSCALL_DEATH_TEST(mq_getsetattr); 280RESTRICT_SYSCALL_DEATH_TEST(mq_notify); 281RESTRICT_SYSCALL_DEATH_TEST(mq_open); 282RESTRICT_SYSCALL_DEATH_TEST(mq_timedreceive); 283RESTRICT_SYSCALL_DEATH_TEST(mq_timedsend); 284RESTRICT_SYSCALL_DEATH_TEST(mq_unlink); 285RESTRICT_SYSCALL_DEATH_TEST(mremap); 286#if defined(__x86_64__) || defined(__arm__) 287RESTRICT_SYSCALL_DEATH_TEST(msgctl); 288#endif 289#if defined(__x86_64__) || defined(__arm__) 290RESTRICT_SYSCALL_DEATH_TEST(msgget); 291#endif 292#if defined(__x86_64__) || defined(__arm__) 293RESTRICT_SYSCALL_DEATH_TEST(msgrcv); 294#endif 295#if defined(__x86_64__) || defined(__arm__) 296RESTRICT_SYSCALL_DEATH_TEST(msgsnd); 297#endif 298RESTRICT_SYSCALL_DEATH_TEST(msync); 299RESTRICT_SYSCALL_DEATH_TEST(munlock); 300RESTRICT_SYSCALL_DEATH_TEST(munlockall); 301RESTRICT_SYSCALL_DEATH_TEST(name_to_handle_at); 302#if defined(__x86_64__) 303RESTRICT_SYSCALL_DEATH_TEST(newfstatat); 304#endif 305RESTRICT_SYSCALL_DEATH_TEST(nfsservctl); 306#if defined(__i386__) || defined(__arm__) 307RESTRICT_SYSCALL_DEATH_TEST(nice); 308#endif 309#if defined(__i386__) 310RESTRICT_SYSCALL_DEATH_TEST(oldfstat); 311#endif 312#if defined(__i386__) 313RESTRICT_SYSCALL_DEATH_TEST(oldlstat); 314#endif 315#if defined(__i386__) 316RESTRICT_SYSCALL_DEATH_TEST(oldolduname); 317#endif 318#if defined(__i386__) 319RESTRICT_SYSCALL_DEATH_TEST(oldstat); 320#endif 321#if defined(__i386__) 322RESTRICT_SYSCALL_DEATH_TEST(olduname); 323#endif 324RESTRICT_SYSCALL_DEATH_TEST(open_by_handle_at); 325RESTRICT_SYSCALL_DEATH_TEST(pause); 326#if defined(__arm__) 327RESTRICT_SYSCALL_DEATH_TEST(pciconfig_iobase); 328#endif 329#if defined(__arm__) 330RESTRICT_SYSCALL_DEATH_TEST(pciconfig_read); 331#endif 332#if defined(__arm__) 333RESTRICT_SYSCALL_DEATH_TEST(pciconfig_write); 334#endif 335RESTRICT_SYSCALL_DEATH_TEST(perf_event_open); 336RESTRICT_SYSCALL_DEATH_TEST(personality); 337RESTRICT_SYSCALL_DEATH_TEST(pipe2); 338RESTRICT_SYSCALL_DEATH_TEST(pivot_root); 339RESTRICT_SYSCALL_DEATH_TEST(ppoll); 340RESTRICT_SYSCALL_DEATH_TEST(preadv); 341RESTRICT_SYSCALL_DEATH_TEST(prlimit64); 342RESTRICT_SYSCALL_DEATH_TEST(process_vm_readv); 343RESTRICT_SYSCALL_DEATH_TEST(process_vm_writev); 344#if defined(__i386__) 345RESTRICT_SYSCALL_DEATH_TEST(prof); 346#endif 347#if defined(__i386__) 348RESTRICT_SYSCALL_DEATH_TEST(profil); 349#endif 350RESTRICT_SYSCALL_DEATH_TEST(pselect6); 351#if defined(__i386__) || defined(__x86_64__) 352RESTRICT_SYSCALL_DEATH_TEST(putpmsg); 353#endif 354RESTRICT_SYSCALL_DEATH_TEST(pwritev); 355#if defined(__i386__) || defined(__x86_64__) 356RESTRICT_SYSCALL_DEATH_TEST(query_module); 357#endif 358RESTRICT_SYSCALL_DEATH_TEST(quotactl); 359RESTRICT_SYSCALL_DEATH_TEST(readahead); 360#if defined(__i386__) 361RESTRICT_SYSCALL_DEATH_TEST(readdir); 362#endif 363RESTRICT_SYSCALL_DEATH_TEST(readlink); 364RESTRICT_SYSCALL_DEATH_TEST(readlinkat); 365RESTRICT_SYSCALL_DEATH_TEST(readv); 366RESTRICT_SYSCALL_DEATH_TEST(reboot); 367#if defined(__arm__) 368RESTRICT_SYSCALL_DEATH_TEST(recv); 369#endif 370#if defined(__x86_64__) || defined(__arm__) 371RESTRICT_SYSCALL_DEATH_TEST(recvfrom); 372#endif 373RESTRICT_SYSCALL_DEATH_TEST(recvmmsg); 374RESTRICT_SYSCALL_DEATH_TEST(remap_file_pages); 375RESTRICT_SYSCALL_DEATH_TEST(removexattr); 376RESTRICT_SYSCALL_DEATH_TEST(rename); 377RESTRICT_SYSCALL_DEATH_TEST(renameat); 378RESTRICT_SYSCALL_DEATH_TEST(request_key); 379RESTRICT_SYSCALL_DEATH_TEST(rmdir); 380RESTRICT_SYSCALL_DEATH_TEST(rt_sigaction); 381RESTRICT_SYSCALL_DEATH_TEST(rt_sigpending); 382RESTRICT_SYSCALL_DEATH_TEST(rt_sigprocmask); 383RESTRICT_SYSCALL_DEATH_TEST(rt_sigqueueinfo); 384RESTRICT_SYSCALL_DEATH_TEST(rt_sigreturn); 385RESTRICT_SYSCALL_DEATH_TEST(rt_sigsuspend); 386RESTRICT_SYSCALL_DEATH_TEST(rt_sigtimedwait); 387RESTRICT_SYSCALL_DEATH_TEST(rt_tgsigqueueinfo); 388RESTRICT_SYSCALL_DEATH_TEST(sched_get_priority_max); 389RESTRICT_SYSCALL_DEATH_TEST(sched_get_priority_min); 390RESTRICT_SYSCALL_DEATH_TEST(sched_getaffinity); 391RESTRICT_SYSCALL_DEATH_TEST(sched_getparam); 392RESTRICT_SYSCALL_DEATH_TEST(sched_getscheduler); 393RESTRICT_SYSCALL_DEATH_TEST(sched_rr_get_interval); 394RESTRICT_SYSCALL_DEATH_TEST(sched_setaffinity); 395RESTRICT_SYSCALL_DEATH_TEST(sched_setparam); 396RESTRICT_SYSCALL_DEATH_TEST(sched_setscheduler); 397#if defined(__x86_64__) 398RESTRICT_SYSCALL_DEATH_TEST(security); 399#endif 400#if defined(__i386__) || defined(__x86_64__) 401RESTRICT_SYSCALL_DEATH_TEST(select); 402#endif 403#if defined(__x86_64__) || defined(__arm__) 404RESTRICT_SYSCALL_DEATH_TEST(semctl); 405#endif 406#if defined(__x86_64__) || defined(__arm__) 407RESTRICT_SYSCALL_DEATH_TEST(semget); 408#endif 409#if defined(__x86_64__) || defined(__arm__) 410RESTRICT_SYSCALL_DEATH_TEST(semop); 411#endif 412#if defined(__x86_64__) || defined(__arm__) 413RESTRICT_SYSCALL_DEATH_TEST(semtimedop); 414#endif 415#if defined(__arm__) 416RESTRICT_SYSCALL_DEATH_TEST(send); 417#endif 418RESTRICT_SYSCALL_DEATH_TEST(sendfile); 419#if defined(__i386__) || defined(__arm__) 420RESTRICT_SYSCALL_DEATH_TEST(sendfile64); 421#endif 422RESTRICT_SYSCALL_DEATH_TEST(sendmmsg); 423#if defined(__x86_64__) || defined(__arm__) 424RESTRICT_SYSCALL_DEATH_TEST(sendto); 425#endif 426RESTRICT_SYSCALL_DEATH_TEST(set_mempolicy); 427#if defined(__i386__) || defined(__x86_64__) 428RESTRICT_SYSCALL_DEATH_TEST(set_thread_area); 429#endif 430RESTRICT_SYSCALL_DEATH_TEST(set_tid_address); 431RESTRICT_SYSCALL_DEATH_TEST(setdomainname); 432RESTRICT_SYSCALL_DEATH_TEST(setfsgid); 433#if defined(__i386__) || defined(__arm__) 434RESTRICT_SYSCALL_DEATH_TEST(setfsgid32); 435#endif 436RESTRICT_SYSCALL_DEATH_TEST(setfsuid); 437#if defined(__i386__) || defined(__arm__) 438RESTRICT_SYSCALL_DEATH_TEST(setfsuid32); 439#endif 440RESTRICT_SYSCALL_DEATH_TEST(setgid); 441#if defined(__i386__) || defined(__arm__) 442RESTRICT_SYSCALL_DEATH_TEST(setgid32); 443#endif 444RESTRICT_SYSCALL_DEATH_TEST(setgroups); 445#if defined(__i386__) || defined(__arm__) 446RESTRICT_SYSCALL_DEATH_TEST(setgroups32); 447#endif 448RESTRICT_SYSCALL_DEATH_TEST(sethostname); 449RESTRICT_SYSCALL_DEATH_TEST(setitimer); 450RESTRICT_SYSCALL_DEATH_TEST(setns); 451RESTRICT_SYSCALL_DEATH_TEST(setpgid); 452RESTRICT_SYSCALL_DEATH_TEST(setpriority); 453RESTRICT_SYSCALL_DEATH_TEST(setregid); 454#if defined(__i386__) || defined(__arm__) 455RESTRICT_SYSCALL_DEATH_TEST(setregid32); 456#endif 457RESTRICT_SYSCALL_DEATH_TEST(setresgid); 458#if defined(__i386__) || defined(__arm__) 459RESTRICT_SYSCALL_DEATH_TEST(setresgid32); 460#endif 461RESTRICT_SYSCALL_DEATH_TEST(setresuid); 462#if defined(__i386__) || defined(__arm__) 463RESTRICT_SYSCALL_DEATH_TEST(setresuid32); 464#endif 465RESTRICT_SYSCALL_DEATH_TEST(setreuid); 466#if defined(__i386__) || defined(__arm__) 467RESTRICT_SYSCALL_DEATH_TEST(setreuid32); 468#endif 469RESTRICT_SYSCALL_DEATH_TEST(setrlimit); 470RESTRICT_SYSCALL_DEATH_TEST(setsid); 471#if defined(__x86_64__) || defined(__arm__) 472RESTRICT_SYSCALL_DEATH_TEST(setsockopt); 473#endif 474RESTRICT_SYSCALL_DEATH_TEST(settimeofday); 475RESTRICT_SYSCALL_DEATH_TEST(setuid); 476#if defined(__i386__) || defined(__arm__) 477RESTRICT_SYSCALL_DEATH_TEST(setuid32); 478#endif 479RESTRICT_SYSCALL_DEATH_TEST(setxattr); 480#if defined(__i386__) 481RESTRICT_SYSCALL_DEATH_TEST(sgetmask); 482#endif 483#if defined(__x86_64__) || defined(__arm__) 484RESTRICT_SYSCALL_DEATH_TEST(shmat); 485#endif 486#if defined(__x86_64__) || defined(__arm__) 487RESTRICT_SYSCALL_DEATH_TEST(shmctl); 488#endif 489#if defined(__x86_64__) || defined(__arm__) 490RESTRICT_SYSCALL_DEATH_TEST(shmdt); 491#endif 492#if defined(__x86_64__) || defined(__arm__) 493RESTRICT_SYSCALL_DEATH_TEST(shmget); 494#endif 495#if defined(__i386__) || defined(__arm__) 496RESTRICT_SYSCALL_DEATH_TEST(sigaction); 497#endif 498#if defined(__i386__) 499RESTRICT_SYSCALL_DEATH_TEST(signal); 500#endif 501RESTRICT_SYSCALL_DEATH_TEST(signalfd); 502RESTRICT_SYSCALL_DEATH_TEST(signalfd4); 503#if defined(__i386__) || defined(__arm__) 504RESTRICT_SYSCALL_DEATH_TEST(sigpending); 505#endif 506#if defined(__i386__) || defined(__arm__) 507RESTRICT_SYSCALL_DEATH_TEST(sigprocmask); 508#endif 509#if defined(__i386__) || defined(__arm__) 510RESTRICT_SYSCALL_DEATH_TEST(sigreturn); 511#endif 512#if defined(__i386__) || defined(__arm__) 513RESTRICT_SYSCALL_DEATH_TEST(sigsuspend); 514#endif 515#if defined(__x86_64__) || defined(__arm__) 516RESTRICT_SYSCALL_DEATH_TEST(socket); 517#endif 518RESTRICT_SYSCALL_DEATH_TEST(splice); 519#if defined(__i386__) 520RESTRICT_SYSCALL_DEATH_TEST(ssetmask); 521#endif 522RESTRICT_SYSCALL_DEATH_TEST(stat); 523#if defined(__i386__) || defined(__arm__) 524RESTRICT_SYSCALL_DEATH_TEST(stat64); 525#endif 526RESTRICT_SYSCALL_DEATH_TEST(statfs); 527#if defined(__i386__) || defined(__arm__) 528RESTRICT_SYSCALL_DEATH_TEST(statfs64); 529#endif 530#if defined(__i386__) 531RESTRICT_SYSCALL_DEATH_TEST(stime); 532#endif 533#if defined(__i386__) 534RESTRICT_SYSCALL_DEATH_TEST(stty); 535#endif 536RESTRICT_SYSCALL_DEATH_TEST(swapoff); 537RESTRICT_SYSCALL_DEATH_TEST(swapon); 538RESTRICT_SYSCALL_DEATH_TEST(symlink); 539RESTRICT_SYSCALL_DEATH_TEST(symlinkat); 540RESTRICT_SYSCALL_DEATH_TEST(sync); 541#if defined(__i386__) || defined(__x86_64__) 542RESTRICT_SYSCALL_DEATH_TEST(sync_file_range); 543#endif 544#if defined(__arm__) 545RESTRICT_SYSCALL_DEATH_TEST(sync_file_range2); 546#endif 547RESTRICT_SYSCALL_DEATH_TEST(syncfs); 548RESTRICT_SYSCALL_DEATH_TEST(sysfs); 549RESTRICT_SYSCALL_DEATH_TEST(sysinfo); 550RESTRICT_SYSCALL_DEATH_TEST(syslog); 551RESTRICT_SYSCALL_DEATH_TEST(tee); 552RESTRICT_SYSCALL_DEATH_TEST(tgkill); 553RESTRICT_SYSCALL_DEATH_TEST(timer_create); 554RESTRICT_SYSCALL_DEATH_TEST(timer_delete); 555RESTRICT_SYSCALL_DEATH_TEST(timer_getoverrun); 556RESTRICT_SYSCALL_DEATH_TEST(timer_gettime); 557RESTRICT_SYSCALL_DEATH_TEST(timer_settime); 558RESTRICT_SYSCALL_DEATH_TEST(timerfd_create); 559RESTRICT_SYSCALL_DEATH_TEST(timerfd_gettime); 560RESTRICT_SYSCALL_DEATH_TEST(timerfd_settime); 561RESTRICT_SYSCALL_DEATH_TEST(tkill); 562RESTRICT_SYSCALL_DEATH_TEST(truncate); 563#if defined(__i386__) || defined(__arm__) 564RESTRICT_SYSCALL_DEATH_TEST(truncate64); 565#endif 566#if defined(__x86_64__) 567RESTRICT_SYSCALL_DEATH_TEST(tuxcall); 568#endif 569#if defined(__i386__) || defined(__arm__) 570RESTRICT_SYSCALL_DEATH_TEST(ugetrlimit); 571#endif 572#if defined(__i386__) 573RESTRICT_SYSCALL_DEATH_TEST(ulimit); 574#endif 575RESTRICT_SYSCALL_DEATH_TEST(umask); 576#if defined(__i386__) 577RESTRICT_SYSCALL_DEATH_TEST(umount); 578#endif 579RESTRICT_SYSCALL_DEATH_TEST(umount2); 580RESTRICT_SYSCALL_DEATH_TEST(uname); 581RESTRICT_SYSCALL_DEATH_TEST(unlink); 582RESTRICT_SYSCALL_DEATH_TEST(unlinkat); 583RESTRICT_SYSCALL_DEATH_TEST(unshare); 584RESTRICT_SYSCALL_DEATH_TEST(uselib); 585RESTRICT_SYSCALL_DEATH_TEST(ustat); 586#if defined(__i386__) || defined(__x86_64__) 587RESTRICT_SYSCALL_DEATH_TEST(utime); 588#endif 589RESTRICT_SYSCALL_DEATH_TEST(utimensat); 590RESTRICT_SYSCALL_DEATH_TEST(utimes); 591RESTRICT_SYSCALL_DEATH_TEST(vfork); 592RESTRICT_SYSCALL_DEATH_TEST(vhangup); 593#if defined(__i386__) 594RESTRICT_SYSCALL_DEATH_TEST(vm86); 595#endif 596#if defined(__i386__) 597RESTRICT_SYSCALL_DEATH_TEST(vm86old); 598#endif 599RESTRICT_SYSCALL_DEATH_TEST(vmsplice); 600RESTRICT_SYSCALL_DEATH_TEST(vserver); 601RESTRICT_SYSCALL_DEATH_TEST(wait4); 602RESTRICT_SYSCALL_DEATH_TEST(waitid); 603#if defined(__i386__) 604RESTRICT_SYSCALL_DEATH_TEST(waitpid); 605#endif 606RESTRICT_SYSCALL_DEATH_TEST(writev); 607 608// ARM specific syscalls. 609#if defined(__arm__) 610RESTRICT_ARM_SYSCALL_DEATH_TEST(breakpoint); 611RESTRICT_ARM_SYSCALL_DEATH_TEST(usr26); 612RESTRICT_ARM_SYSCALL_DEATH_TEST(usr32); 613RESTRICT_ARM_SYSCALL_DEATH_TEST(set_tls); 614#endif 615 616} // namespace 617 618#endif // !ADDRESS_SANITIZER && !THREAD_SANITIZER && 619 // !MEMORY_SANITIZER && !LEAK_SANITIZER 620