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