blob: 3f3f1e78dfb8594835935aa0473ad459adc808bc [file] [log] [blame]
Logan Chien55afb0a2018-10-15 10:42:14 +08001//===-- linux_syscall_hooks.h ---------------------------------------------===//
2//
Logan Chiendbcf4122019-03-21 10:50:25 +08003// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
Logan Chien55afb0a2018-10-15 10:42:14 +08006//
7//===----------------------------------------------------------------------===//
8//
9// This file is a part of public sanitizer interface.
10//
11// System call handlers.
12//
13// Interface methods declared in this header implement pre- and post- syscall
14// actions for the active sanitizer.
15// Usage:
16// __sanitizer_syscall_pre_getfoo(...args...);
17// long res = syscall(__NR_getfoo, ...args...);
18// __sanitizer_syscall_post_getfoo(res, ...args...);
19//===----------------------------------------------------------------------===//
20#ifndef SANITIZER_LINUX_SYSCALL_HOOKS_H
21#define SANITIZER_LINUX_SYSCALL_HOOKS_H
22
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -080023#define __sanitizer_syscall_pre_time(tloc) \
Logan Chien55afb0a2018-10-15 10:42:14 +080024 __sanitizer_syscall_pre_impl_time((long)(tloc))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -080025#define __sanitizer_syscall_post_time(res, tloc) \
Logan Chien55afb0a2018-10-15 10:42:14 +080026 __sanitizer_syscall_post_impl_time(res, (long)(tloc))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -080027#define __sanitizer_syscall_pre_stime(tptr) \
Logan Chien55afb0a2018-10-15 10:42:14 +080028 __sanitizer_syscall_pre_impl_stime((long)(tptr))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -080029#define __sanitizer_syscall_post_stime(res, tptr) \
Logan Chien55afb0a2018-10-15 10:42:14 +080030 __sanitizer_syscall_post_impl_stime(res, (long)(tptr))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -080031#define __sanitizer_syscall_pre_gettimeofday(tv, tz) \
Logan Chien55afb0a2018-10-15 10:42:14 +080032 __sanitizer_syscall_pre_impl_gettimeofday((long)(tv), (long)(tz))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -080033#define __sanitizer_syscall_post_gettimeofday(res, tv, tz) \
Logan Chien55afb0a2018-10-15 10:42:14 +080034 __sanitizer_syscall_post_impl_gettimeofday(res, (long)(tv), (long)(tz))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -080035#define __sanitizer_syscall_pre_settimeofday(tv, tz) \
Logan Chien55afb0a2018-10-15 10:42:14 +080036 __sanitizer_syscall_pre_impl_settimeofday((long)(tv), (long)(tz))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -080037#define __sanitizer_syscall_post_settimeofday(res, tv, tz) \
Logan Chien55afb0a2018-10-15 10:42:14 +080038 __sanitizer_syscall_post_impl_settimeofday(res, (long)(tv), (long)(tz))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -080039#define __sanitizer_syscall_pre_adjtimex(txc_p) \
Logan Chien55afb0a2018-10-15 10:42:14 +080040 __sanitizer_syscall_pre_impl_adjtimex((long)(txc_p))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -080041#define __sanitizer_syscall_post_adjtimex(res, txc_p) \
Logan Chien55afb0a2018-10-15 10:42:14 +080042 __sanitizer_syscall_post_impl_adjtimex(res, (long)(txc_p))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -080043#define __sanitizer_syscall_pre_times(tbuf) \
Logan Chien55afb0a2018-10-15 10:42:14 +080044 __sanitizer_syscall_pre_impl_times((long)(tbuf))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -080045#define __sanitizer_syscall_post_times(res, tbuf) \
Logan Chien55afb0a2018-10-15 10:42:14 +080046 __sanitizer_syscall_post_impl_times(res, (long)(tbuf))
47#define __sanitizer_syscall_pre_gettid() __sanitizer_syscall_pre_impl_gettid()
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -080048#define __sanitizer_syscall_post_gettid(res) \
Logan Chien55afb0a2018-10-15 10:42:14 +080049 __sanitizer_syscall_post_impl_gettid(res)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -080050#define __sanitizer_syscall_pre_nanosleep(rqtp, rmtp) \
Logan Chien55afb0a2018-10-15 10:42:14 +080051 __sanitizer_syscall_pre_impl_nanosleep((long)(rqtp), (long)(rmtp))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -080052#define __sanitizer_syscall_post_nanosleep(res, rqtp, rmtp) \
Logan Chien55afb0a2018-10-15 10:42:14 +080053 __sanitizer_syscall_post_impl_nanosleep(res, (long)(rqtp), (long)(rmtp))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -080054#define __sanitizer_syscall_pre_alarm(seconds) \
Logan Chien55afb0a2018-10-15 10:42:14 +080055 __sanitizer_syscall_pre_impl_alarm((long)(seconds))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -080056#define __sanitizer_syscall_post_alarm(res, seconds) \
Logan Chien55afb0a2018-10-15 10:42:14 +080057 __sanitizer_syscall_post_impl_alarm(res, (long)(seconds))
58#define __sanitizer_syscall_pre_getpid() __sanitizer_syscall_pre_impl_getpid()
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -080059#define __sanitizer_syscall_post_getpid(res) \
Logan Chien55afb0a2018-10-15 10:42:14 +080060 __sanitizer_syscall_post_impl_getpid(res)
61#define __sanitizer_syscall_pre_getppid() __sanitizer_syscall_pre_impl_getppid()
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -080062#define __sanitizer_syscall_post_getppid(res) \
Logan Chien55afb0a2018-10-15 10:42:14 +080063 __sanitizer_syscall_post_impl_getppid(res)
64#define __sanitizer_syscall_pre_getuid() __sanitizer_syscall_pre_impl_getuid()
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -080065#define __sanitizer_syscall_post_getuid(res) \
Logan Chien55afb0a2018-10-15 10:42:14 +080066 __sanitizer_syscall_post_impl_getuid(res)
67#define __sanitizer_syscall_pre_geteuid() __sanitizer_syscall_pre_impl_geteuid()
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -080068#define __sanitizer_syscall_post_geteuid(res) \
Logan Chien55afb0a2018-10-15 10:42:14 +080069 __sanitizer_syscall_post_impl_geteuid(res)
70#define __sanitizer_syscall_pre_getgid() __sanitizer_syscall_pre_impl_getgid()
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -080071#define __sanitizer_syscall_post_getgid(res) \
Logan Chien55afb0a2018-10-15 10:42:14 +080072 __sanitizer_syscall_post_impl_getgid(res)
73#define __sanitizer_syscall_pre_getegid() __sanitizer_syscall_pre_impl_getegid()
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -080074#define __sanitizer_syscall_post_getegid(res) \
Logan Chien55afb0a2018-10-15 10:42:14 +080075 __sanitizer_syscall_post_impl_getegid(res)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -080076#define __sanitizer_syscall_pre_getresuid(ruid, euid, suid) \
77 __sanitizer_syscall_pre_impl_getresuid((long)(ruid), (long)(euid), \
Logan Chien55afb0a2018-10-15 10:42:14 +080078 (long)(suid))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -080079#define __sanitizer_syscall_post_getresuid(res, ruid, euid, suid) \
80 __sanitizer_syscall_post_impl_getresuid(res, (long)(ruid), (long)(euid), \
Logan Chien55afb0a2018-10-15 10:42:14 +080081 (long)(suid))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -080082#define __sanitizer_syscall_pre_getresgid(rgid, egid, sgid) \
83 __sanitizer_syscall_pre_impl_getresgid((long)(rgid), (long)(egid), \
Logan Chien55afb0a2018-10-15 10:42:14 +080084 (long)(sgid))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -080085#define __sanitizer_syscall_post_getresgid(res, rgid, egid, sgid) \
86 __sanitizer_syscall_post_impl_getresgid(res, (long)(rgid), (long)(egid), \
Logan Chien55afb0a2018-10-15 10:42:14 +080087 (long)(sgid))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -080088#define __sanitizer_syscall_pre_getpgid(pid) \
Logan Chien55afb0a2018-10-15 10:42:14 +080089 __sanitizer_syscall_pre_impl_getpgid((long)(pid))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -080090#define __sanitizer_syscall_post_getpgid(res, pid) \
Logan Chien55afb0a2018-10-15 10:42:14 +080091 __sanitizer_syscall_post_impl_getpgid(res, (long)(pid))
92#define __sanitizer_syscall_pre_getpgrp() __sanitizer_syscall_pre_impl_getpgrp()
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -080093#define __sanitizer_syscall_post_getpgrp(res) \
Logan Chien55afb0a2018-10-15 10:42:14 +080094 __sanitizer_syscall_post_impl_getpgrp(res)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -080095#define __sanitizer_syscall_pre_getsid(pid) \
Logan Chien55afb0a2018-10-15 10:42:14 +080096 __sanitizer_syscall_pre_impl_getsid((long)(pid))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -080097#define __sanitizer_syscall_post_getsid(res, pid) \
Logan Chien55afb0a2018-10-15 10:42:14 +080098 __sanitizer_syscall_post_impl_getsid(res, (long)(pid))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -080099#define __sanitizer_syscall_pre_getgroups(gidsetsize, grouplist) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800100 __sanitizer_syscall_pre_impl_getgroups((long)(gidsetsize), (long)(grouplist))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800101#define __sanitizer_syscall_post_getgroups(res, gidsetsize, grouplist) \
102 __sanitizer_syscall_post_impl_getgroups(res, (long)(gidsetsize), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800103 (long)(grouplist))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800104#define __sanitizer_syscall_pre_setregid(rgid, egid) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800105 __sanitizer_syscall_pre_impl_setregid((long)(rgid), (long)(egid))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800106#define __sanitizer_syscall_post_setregid(res, rgid, egid) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800107 __sanitizer_syscall_post_impl_setregid(res, (long)(rgid), (long)(egid))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800108#define __sanitizer_syscall_pre_setgid(gid) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800109 __sanitizer_syscall_pre_impl_setgid((long)(gid))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800110#define __sanitizer_syscall_post_setgid(res, gid) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800111 __sanitizer_syscall_post_impl_setgid(res, (long)(gid))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800112#define __sanitizer_syscall_pre_setreuid(ruid, euid) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800113 __sanitizer_syscall_pre_impl_setreuid((long)(ruid), (long)(euid))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800114#define __sanitizer_syscall_post_setreuid(res, ruid, euid) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800115 __sanitizer_syscall_post_impl_setreuid(res, (long)(ruid), (long)(euid))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800116#define __sanitizer_syscall_pre_setuid(uid) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800117 __sanitizer_syscall_pre_impl_setuid((long)(uid))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800118#define __sanitizer_syscall_post_setuid(res, uid) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800119 __sanitizer_syscall_post_impl_setuid(res, (long)(uid))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800120#define __sanitizer_syscall_pre_setresuid(ruid, euid, suid) \
121 __sanitizer_syscall_pre_impl_setresuid((long)(ruid), (long)(euid), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800122 (long)(suid))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800123#define __sanitizer_syscall_post_setresuid(res, ruid, euid, suid) \
124 __sanitizer_syscall_post_impl_setresuid(res, (long)(ruid), (long)(euid), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800125 (long)(suid))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800126#define __sanitizer_syscall_pre_setresgid(rgid, egid, sgid) \
127 __sanitizer_syscall_pre_impl_setresgid((long)(rgid), (long)(egid), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800128 (long)(sgid))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800129#define __sanitizer_syscall_post_setresgid(res, rgid, egid, sgid) \
130 __sanitizer_syscall_post_impl_setresgid(res, (long)(rgid), (long)(egid), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800131 (long)(sgid))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800132#define __sanitizer_syscall_pre_setfsuid(uid) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800133 __sanitizer_syscall_pre_impl_setfsuid((long)(uid))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800134#define __sanitizer_syscall_post_setfsuid(res, uid) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800135 __sanitizer_syscall_post_impl_setfsuid(res, (long)(uid))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800136#define __sanitizer_syscall_pre_setfsgid(gid) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800137 __sanitizer_syscall_pre_impl_setfsgid((long)(gid))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800138#define __sanitizer_syscall_post_setfsgid(res, gid) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800139 __sanitizer_syscall_post_impl_setfsgid(res, (long)(gid))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800140#define __sanitizer_syscall_pre_setpgid(pid, pgid) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800141 __sanitizer_syscall_pre_impl_setpgid((long)(pid), (long)(pgid))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800142#define __sanitizer_syscall_post_setpgid(res, pid, pgid) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800143 __sanitizer_syscall_post_impl_setpgid(res, (long)(pid), (long)(pgid))
144#define __sanitizer_syscall_pre_setsid() __sanitizer_syscall_pre_impl_setsid()
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800145#define __sanitizer_syscall_post_setsid(res) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800146 __sanitizer_syscall_post_impl_setsid(res)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800147#define __sanitizer_syscall_pre_setgroups(gidsetsize, grouplist) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800148 __sanitizer_syscall_pre_impl_setgroups((long)(gidsetsize), (long)(grouplist))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800149#define __sanitizer_syscall_post_setgroups(res, gidsetsize, grouplist) \
150 __sanitizer_syscall_post_impl_setgroups(res, (long)(gidsetsize), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800151 (long)(grouplist))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800152#define __sanitizer_syscall_pre_acct(name) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800153 __sanitizer_syscall_pre_impl_acct((long)(name))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800154#define __sanitizer_syscall_post_acct(res, name) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800155 __sanitizer_syscall_post_impl_acct(res, (long)(name))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800156#define __sanitizer_syscall_pre_capget(header, dataptr) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800157 __sanitizer_syscall_pre_impl_capget((long)(header), (long)(dataptr))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800158#define __sanitizer_syscall_post_capget(res, header, dataptr) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800159 __sanitizer_syscall_post_impl_capget(res, (long)(header), (long)(dataptr))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800160#define __sanitizer_syscall_pre_capset(header, data) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800161 __sanitizer_syscall_pre_impl_capset((long)(header), (long)(data))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800162#define __sanitizer_syscall_post_capset(res, header, data) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800163 __sanitizer_syscall_post_impl_capset(res, (long)(header), (long)(data))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800164#define __sanitizer_syscall_pre_personality(personality) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800165 __sanitizer_syscall_pre_impl_personality((long)(personality))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800166#define __sanitizer_syscall_post_personality(res, personality) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800167 __sanitizer_syscall_post_impl_personality(res, (long)(personality))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800168#define __sanitizer_syscall_pre_sigpending(set) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800169 __sanitizer_syscall_pre_impl_sigpending((long)(set))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800170#define __sanitizer_syscall_post_sigpending(res, set) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800171 __sanitizer_syscall_post_impl_sigpending(res, (long)(set))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800172#define __sanitizer_syscall_pre_sigprocmask(how, set, oset) \
173 __sanitizer_syscall_pre_impl_sigprocmask((long)(how), (long)(set), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800174 (long)(oset))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800175#define __sanitizer_syscall_post_sigprocmask(res, how, set, oset) \
176 __sanitizer_syscall_post_impl_sigprocmask(res, (long)(how), (long)(set), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800177 (long)(oset))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800178#define __sanitizer_syscall_pre_getitimer(which, value) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800179 __sanitizer_syscall_pre_impl_getitimer((long)(which), (long)(value))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800180#define __sanitizer_syscall_post_getitimer(res, which, value) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800181 __sanitizer_syscall_post_impl_getitimer(res, (long)(which), (long)(value))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800182#define __sanitizer_syscall_pre_setitimer(which, value, ovalue) \
183 __sanitizer_syscall_pre_impl_setitimer((long)(which), (long)(value), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800184 (long)(ovalue))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800185#define __sanitizer_syscall_post_setitimer(res, which, value, ovalue) \
186 __sanitizer_syscall_post_impl_setitimer(res, (long)(which), (long)(value), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800187 (long)(ovalue))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800188#define __sanitizer_syscall_pre_timer_create(which_clock, timer_event_spec, \
189 created_timer_id) \
190 __sanitizer_syscall_pre_impl_timer_create( \
Logan Chien55afb0a2018-10-15 10:42:14 +0800191 (long)(which_clock), (long)(timer_event_spec), (long)(created_timer_id))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800192#define __sanitizer_syscall_post_timer_create( \
193 res, which_clock, timer_event_spec, created_timer_id) \
194 __sanitizer_syscall_post_impl_timer_create(res, (long)(which_clock), \
195 (long)(timer_event_spec), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800196 (long)(created_timer_id))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800197#define __sanitizer_syscall_pre_timer_gettime(timer_id, setting) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800198 __sanitizer_syscall_pre_impl_timer_gettime((long)(timer_id), (long)(setting))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800199#define __sanitizer_syscall_post_timer_gettime(res, timer_id, setting) \
200 __sanitizer_syscall_post_impl_timer_gettime(res, (long)(timer_id), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800201 (long)(setting))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800202#define __sanitizer_syscall_pre_timer_getoverrun(timer_id) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800203 __sanitizer_syscall_pre_impl_timer_getoverrun((long)(timer_id))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800204#define __sanitizer_syscall_post_timer_getoverrun(res, timer_id) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800205 __sanitizer_syscall_post_impl_timer_getoverrun(res, (long)(timer_id))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800206#define __sanitizer_syscall_pre_timer_settime(timer_id, flags, new_setting, \
207 old_setting) \
208 __sanitizer_syscall_pre_impl_timer_settime((long)(timer_id), (long)(flags), \
209 (long)(new_setting), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800210 (long)(old_setting))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800211#define __sanitizer_syscall_post_timer_settime(res, timer_id, flags, \
212 new_setting, old_setting) \
213 __sanitizer_syscall_post_impl_timer_settime( \
214 res, (long)(timer_id), (long)(flags), (long)(new_setting), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800215 (long)(old_setting))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800216#define __sanitizer_syscall_pre_timer_delete(timer_id) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800217 __sanitizer_syscall_pre_impl_timer_delete((long)(timer_id))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800218#define __sanitizer_syscall_post_timer_delete(res, timer_id) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800219 __sanitizer_syscall_post_impl_timer_delete(res, (long)(timer_id))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800220#define __sanitizer_syscall_pre_clock_settime(which_clock, tp) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800221 __sanitizer_syscall_pre_impl_clock_settime((long)(which_clock), (long)(tp))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800222#define __sanitizer_syscall_post_clock_settime(res, which_clock, tp) \
223 __sanitizer_syscall_post_impl_clock_settime(res, (long)(which_clock), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800224 (long)(tp))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800225#define __sanitizer_syscall_pre_clock_gettime(which_clock, tp) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800226 __sanitizer_syscall_pre_impl_clock_gettime((long)(which_clock), (long)(tp))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800227#define __sanitizer_syscall_post_clock_gettime(res, which_clock, tp) \
228 __sanitizer_syscall_post_impl_clock_gettime(res, (long)(which_clock), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800229 (long)(tp))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800230#define __sanitizer_syscall_pre_clock_adjtime(which_clock, tx) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800231 __sanitizer_syscall_pre_impl_clock_adjtime((long)(which_clock), (long)(tx))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800232#define __sanitizer_syscall_post_clock_adjtime(res, which_clock, tx) \
233 __sanitizer_syscall_post_impl_clock_adjtime(res, (long)(which_clock), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800234 (long)(tx))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800235#define __sanitizer_syscall_pre_clock_getres(which_clock, tp) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800236 __sanitizer_syscall_pre_impl_clock_getres((long)(which_clock), (long)(tp))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800237#define __sanitizer_syscall_post_clock_getres(res, which_clock, tp) \
238 __sanitizer_syscall_post_impl_clock_getres(res, (long)(which_clock), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800239 (long)(tp))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800240#define __sanitizer_syscall_pre_clock_nanosleep(which_clock, flags, rqtp, \
241 rmtp) \
242 __sanitizer_syscall_pre_impl_clock_nanosleep( \
Logan Chien55afb0a2018-10-15 10:42:14 +0800243 (long)(which_clock), (long)(flags), (long)(rqtp), (long)(rmtp))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800244#define __sanitizer_syscall_post_clock_nanosleep(res, which_clock, flags, \
245 rqtp, rmtp) \
246 __sanitizer_syscall_post_impl_clock_nanosleep( \
Logan Chien55afb0a2018-10-15 10:42:14 +0800247 res, (long)(which_clock), (long)(flags), (long)(rqtp), (long)(rmtp))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800248#define __sanitizer_syscall_pre_nice(increment) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800249 __sanitizer_syscall_pre_impl_nice((long)(increment))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800250#define __sanitizer_syscall_post_nice(res, increment) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800251 __sanitizer_syscall_post_impl_nice(res, (long)(increment))
252#define __sanitizer_syscall_pre_sched_setscheduler(pid, policy, param) \
253 __sanitizer_syscall_pre_impl_sched_setscheduler((long)(pid), (long)(policy), \
254 (long)(param))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800255#define __sanitizer_syscall_post_sched_setscheduler(res, pid, policy, param) \
256 __sanitizer_syscall_post_impl_sched_setscheduler( \
Logan Chien55afb0a2018-10-15 10:42:14 +0800257 res, (long)(pid), (long)(policy), (long)(param))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800258#define __sanitizer_syscall_pre_sched_setparam(pid, param) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800259 __sanitizer_syscall_pre_impl_sched_setparam((long)(pid), (long)(param))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800260#define __sanitizer_syscall_post_sched_setparam(res, pid, param) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800261 __sanitizer_syscall_post_impl_sched_setparam(res, (long)(pid), (long)(param))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800262#define __sanitizer_syscall_pre_sched_getscheduler(pid) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800263 __sanitizer_syscall_pre_impl_sched_getscheduler((long)(pid))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800264#define __sanitizer_syscall_post_sched_getscheduler(res, pid) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800265 __sanitizer_syscall_post_impl_sched_getscheduler(res, (long)(pid))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800266#define __sanitizer_syscall_pre_sched_getparam(pid, param) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800267 __sanitizer_syscall_pre_impl_sched_getparam((long)(pid), (long)(param))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800268#define __sanitizer_syscall_post_sched_getparam(res, pid, param) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800269 __sanitizer_syscall_post_impl_sched_getparam(res, (long)(pid), (long)(param))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800270#define __sanitizer_syscall_pre_sched_setaffinity(pid, len, user_mask_ptr) \
271 __sanitizer_syscall_pre_impl_sched_setaffinity((long)(pid), (long)(len), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800272 (long)(user_mask_ptr))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800273#define __sanitizer_syscall_post_sched_setaffinity(res, pid, len, \
274 user_mask_ptr) \
275 __sanitizer_syscall_post_impl_sched_setaffinity( \
Logan Chien55afb0a2018-10-15 10:42:14 +0800276 res, (long)(pid), (long)(len), (long)(user_mask_ptr))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800277#define __sanitizer_syscall_pre_sched_getaffinity(pid, len, user_mask_ptr) \
278 __sanitizer_syscall_pre_impl_sched_getaffinity((long)(pid), (long)(len), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800279 (long)(user_mask_ptr))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800280#define __sanitizer_syscall_post_sched_getaffinity(res, pid, len, \
281 user_mask_ptr) \
282 __sanitizer_syscall_post_impl_sched_getaffinity( \
Logan Chien55afb0a2018-10-15 10:42:14 +0800283 res, (long)(pid), (long)(len), (long)(user_mask_ptr))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800284#define __sanitizer_syscall_pre_sched_yield() \
Logan Chien55afb0a2018-10-15 10:42:14 +0800285 __sanitizer_syscall_pre_impl_sched_yield()
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800286#define __sanitizer_syscall_post_sched_yield(res) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800287 __sanitizer_syscall_post_impl_sched_yield(res)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800288#define __sanitizer_syscall_pre_sched_get_priority_max(policy) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800289 __sanitizer_syscall_pre_impl_sched_get_priority_max((long)(policy))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800290#define __sanitizer_syscall_post_sched_get_priority_max(res, policy) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800291 __sanitizer_syscall_post_impl_sched_get_priority_max(res, (long)(policy))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800292#define __sanitizer_syscall_pre_sched_get_priority_min(policy) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800293 __sanitizer_syscall_pre_impl_sched_get_priority_min((long)(policy))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800294#define __sanitizer_syscall_post_sched_get_priority_min(res, policy) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800295 __sanitizer_syscall_post_impl_sched_get_priority_min(res, (long)(policy))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800296#define __sanitizer_syscall_pre_sched_rr_get_interval(pid, interval) \
297 __sanitizer_syscall_pre_impl_sched_rr_get_interval((long)(pid), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800298 (long)(interval))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800299#define __sanitizer_syscall_post_sched_rr_get_interval(res, pid, interval) \
300 __sanitizer_syscall_post_impl_sched_rr_get_interval(res, (long)(pid), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800301 (long)(interval))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800302#define __sanitizer_syscall_pre_setpriority(which, who, niceval) \
303 __sanitizer_syscall_pre_impl_setpriority((long)(which), (long)(who), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800304 (long)(niceval))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800305#define __sanitizer_syscall_post_setpriority(res, which, who, niceval) \
306 __sanitizer_syscall_post_impl_setpriority(res, (long)(which), (long)(who), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800307 (long)(niceval))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800308#define __sanitizer_syscall_pre_getpriority(which, who) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800309 __sanitizer_syscall_pre_impl_getpriority((long)(which), (long)(who))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800310#define __sanitizer_syscall_post_getpriority(res, which, who) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800311 __sanitizer_syscall_post_impl_getpriority(res, (long)(which), (long)(who))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800312#define __sanitizer_syscall_pre_shutdown(arg0, arg1) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800313 __sanitizer_syscall_pre_impl_shutdown((long)(arg0), (long)(arg1))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800314#define __sanitizer_syscall_post_shutdown(res, arg0, arg1) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800315 __sanitizer_syscall_post_impl_shutdown(res, (long)(arg0), (long)(arg1))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800316#define __sanitizer_syscall_pre_reboot(magic1, magic2, cmd, arg) \
317 __sanitizer_syscall_pre_impl_reboot((long)(magic1), (long)(magic2), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800318 (long)(cmd), (long)(arg))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800319#define __sanitizer_syscall_post_reboot(res, magic1, magic2, cmd, arg) \
320 __sanitizer_syscall_post_impl_reboot(res, (long)(magic1), (long)(magic2), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800321 (long)(cmd), (long)(arg))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800322#define __sanitizer_syscall_pre_restart_syscall() \
Logan Chien55afb0a2018-10-15 10:42:14 +0800323 __sanitizer_syscall_pre_impl_restart_syscall()
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800324#define __sanitizer_syscall_post_restart_syscall(res) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800325 __sanitizer_syscall_post_impl_restart_syscall(res)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800326#define __sanitizer_syscall_pre_kexec_load(entry, nr_segments, segments, \
327 flags) \
328 __sanitizer_syscall_pre_impl_kexec_load((long)(entry), (long)(nr_segments), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800329 (long)(segments), (long)(flags))
330#define __sanitizer_syscall_post_kexec_load(res, entry, nr_segments, segments, \
331 flags) \
332 __sanitizer_syscall_post_impl_kexec_load(res, (long)(entry), \
333 (long)(nr_segments), \
334 (long)(segments), (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800335#define __sanitizer_syscall_pre_exit(error_code) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800336 __sanitizer_syscall_pre_impl_exit((long)(error_code))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800337#define __sanitizer_syscall_post_exit(res, error_code) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800338 __sanitizer_syscall_post_impl_exit(res, (long)(error_code))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800339#define __sanitizer_syscall_pre_exit_group(error_code) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800340 __sanitizer_syscall_pre_impl_exit_group((long)(error_code))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800341#define __sanitizer_syscall_post_exit_group(res, error_code) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800342 __sanitizer_syscall_post_impl_exit_group(res, (long)(error_code))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800343#define __sanitizer_syscall_pre_wait4(pid, stat_addr, options, ru) \
344 __sanitizer_syscall_pre_impl_wait4((long)(pid), (long)(stat_addr), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800345 (long)(options), (long)(ru))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800346#define __sanitizer_syscall_post_wait4(res, pid, stat_addr, options, ru) \
347 __sanitizer_syscall_post_impl_wait4(res, (long)(pid), (long)(stat_addr), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800348 (long)(options), (long)(ru))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800349#define __sanitizer_syscall_pre_waitid(which, pid, infop, options, ru) \
350 __sanitizer_syscall_pre_impl_waitid( \
Logan Chien55afb0a2018-10-15 10:42:14 +0800351 (long)(which), (long)(pid), (long)(infop), (long)(options), (long)(ru))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800352#define __sanitizer_syscall_post_waitid(res, which, pid, infop, options, ru) \
353 __sanitizer_syscall_post_impl_waitid(res, (long)(which), (long)(pid), \
354 (long)(infop), (long)(options), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800355 (long)(ru))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800356#define __sanitizer_syscall_pre_waitpid(pid, stat_addr, options) \
357 __sanitizer_syscall_pre_impl_waitpid((long)(pid), (long)(stat_addr), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800358 (long)(options))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800359#define __sanitizer_syscall_post_waitpid(res, pid, stat_addr, options) \
360 __sanitizer_syscall_post_impl_waitpid(res, (long)(pid), (long)(stat_addr), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800361 (long)(options))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800362#define __sanitizer_syscall_pre_set_tid_address(tidptr) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800363 __sanitizer_syscall_pre_impl_set_tid_address((long)(tidptr))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800364#define __sanitizer_syscall_post_set_tid_address(res, tidptr) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800365 __sanitizer_syscall_post_impl_set_tid_address(res, (long)(tidptr))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800366#define __sanitizer_syscall_pre_init_module(umod, len, uargs) \
367 __sanitizer_syscall_pre_impl_init_module((long)(umod), (long)(len), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800368 (long)(uargs))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800369#define __sanitizer_syscall_post_init_module(res, umod, len, uargs) \
370 __sanitizer_syscall_post_impl_init_module(res, (long)(umod), (long)(len), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800371 (long)(uargs))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800372#define __sanitizer_syscall_pre_delete_module(name_user, flags) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800373 __sanitizer_syscall_pre_impl_delete_module((long)(name_user), (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800374#define __sanitizer_syscall_post_delete_module(res, name_user, flags) \
375 __sanitizer_syscall_post_impl_delete_module(res, (long)(name_user), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800376 (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800377#define __sanitizer_syscall_pre_rt_sigprocmask(how, set, oset, sigsetsize) \
378 __sanitizer_syscall_pre_impl_rt_sigprocmask( \
Logan Chien55afb0a2018-10-15 10:42:14 +0800379 (long)(how), (long)(set), (long)(oset), (long)(sigsetsize))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800380#define __sanitizer_syscall_post_rt_sigprocmask(res, how, set, oset, \
381 sigsetsize) \
382 __sanitizer_syscall_post_impl_rt_sigprocmask( \
Logan Chien55afb0a2018-10-15 10:42:14 +0800383 res, (long)(how), (long)(set), (long)(oset), (long)(sigsetsize))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800384#define __sanitizer_syscall_pre_rt_sigpending(set, sigsetsize) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800385 __sanitizer_syscall_pre_impl_rt_sigpending((long)(set), (long)(sigsetsize))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800386#define __sanitizer_syscall_post_rt_sigpending(res, set, sigsetsize) \
387 __sanitizer_syscall_post_impl_rt_sigpending(res, (long)(set), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800388 (long)(sigsetsize))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800389#define __sanitizer_syscall_pre_rt_sigtimedwait(uthese, uinfo, uts, \
390 sigsetsize) \
391 __sanitizer_syscall_pre_impl_rt_sigtimedwait( \
Logan Chien55afb0a2018-10-15 10:42:14 +0800392 (long)(uthese), (long)(uinfo), (long)(uts), (long)(sigsetsize))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800393#define __sanitizer_syscall_post_rt_sigtimedwait(res, uthese, uinfo, uts, \
394 sigsetsize) \
395 __sanitizer_syscall_post_impl_rt_sigtimedwait( \
Logan Chien55afb0a2018-10-15 10:42:14 +0800396 res, (long)(uthese), (long)(uinfo), (long)(uts), (long)(sigsetsize))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800397#define __sanitizer_syscall_pre_rt_tgsigqueueinfo(tgid, pid, sig, uinfo) \
398 __sanitizer_syscall_pre_impl_rt_tgsigqueueinfo((long)(tgid), (long)(pid), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800399 (long)(sig), (long)(uinfo))
400#define __sanitizer_syscall_post_rt_tgsigqueueinfo(res, tgid, pid, sig, uinfo) \
401 __sanitizer_syscall_post_impl_rt_tgsigqueueinfo( \
402 res, (long)(tgid), (long)(pid), (long)(sig), (long)(uinfo))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800403#define __sanitizer_syscall_pre_kill(pid, sig) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800404 __sanitizer_syscall_pre_impl_kill((long)(pid), (long)(sig))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800405#define __sanitizer_syscall_post_kill(res, pid, sig) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800406 __sanitizer_syscall_post_impl_kill(res, (long)(pid), (long)(sig))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800407#define __sanitizer_syscall_pre_tgkill(tgid, pid, sig) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800408 __sanitizer_syscall_pre_impl_tgkill((long)(tgid), (long)(pid), (long)(sig))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800409#define __sanitizer_syscall_post_tgkill(res, tgid, pid, sig) \
410 __sanitizer_syscall_post_impl_tgkill(res, (long)(tgid), (long)(pid), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800411 (long)(sig))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800412#define __sanitizer_syscall_pre_tkill(pid, sig) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800413 __sanitizer_syscall_pre_impl_tkill((long)(pid), (long)(sig))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800414#define __sanitizer_syscall_post_tkill(res, pid, sig) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800415 __sanitizer_syscall_post_impl_tkill(res, (long)(pid), (long)(sig))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800416#define __sanitizer_syscall_pre_rt_sigqueueinfo(pid, sig, uinfo) \
417 __sanitizer_syscall_pre_impl_rt_sigqueueinfo((long)(pid), (long)(sig), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800418 (long)(uinfo))
419#define __sanitizer_syscall_post_rt_sigqueueinfo(res, pid, sig, uinfo) \
420 __sanitizer_syscall_post_impl_rt_sigqueueinfo(res, (long)(pid), (long)(sig), \
421 (long)(uinfo))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800422#define __sanitizer_syscall_pre_sgetmask() \
Logan Chien55afb0a2018-10-15 10:42:14 +0800423 __sanitizer_syscall_pre_impl_sgetmask()
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800424#define __sanitizer_syscall_post_sgetmask(res) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800425 __sanitizer_syscall_post_impl_sgetmask(res)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800426#define __sanitizer_syscall_pre_ssetmask(newmask) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800427 __sanitizer_syscall_pre_impl_ssetmask((long)(newmask))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800428#define __sanitizer_syscall_post_ssetmask(res, newmask) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800429 __sanitizer_syscall_post_impl_ssetmask(res, (long)(newmask))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800430#define __sanitizer_syscall_pre_signal(sig, handler) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800431 __sanitizer_syscall_pre_impl_signal((long)(sig), (long)(handler))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800432#define __sanitizer_syscall_post_signal(res, sig, handler) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800433 __sanitizer_syscall_post_impl_signal(res, (long)(sig), (long)(handler))
434#define __sanitizer_syscall_pre_pause() __sanitizer_syscall_pre_impl_pause()
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800435#define __sanitizer_syscall_post_pause(res) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800436 __sanitizer_syscall_post_impl_pause(res)
437#define __sanitizer_syscall_pre_sync() __sanitizer_syscall_pre_impl_sync()
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800438#define __sanitizer_syscall_post_sync(res) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800439 __sanitizer_syscall_post_impl_sync(res)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800440#define __sanitizer_syscall_pre_fsync(fd) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800441 __sanitizer_syscall_pre_impl_fsync((long)(fd))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800442#define __sanitizer_syscall_post_fsync(res, fd) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800443 __sanitizer_syscall_post_impl_fsync(res, (long)(fd))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800444#define __sanitizer_syscall_pre_fdatasync(fd) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800445 __sanitizer_syscall_pre_impl_fdatasync((long)(fd))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800446#define __sanitizer_syscall_post_fdatasync(res, fd) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800447 __sanitizer_syscall_post_impl_fdatasync(res, (long)(fd))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800448#define __sanitizer_syscall_pre_bdflush(func, data) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800449 __sanitizer_syscall_pre_impl_bdflush((long)(func), (long)(data))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800450#define __sanitizer_syscall_post_bdflush(res, func, data) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800451 __sanitizer_syscall_post_impl_bdflush(res, (long)(func), (long)(data))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800452#define __sanitizer_syscall_pre_mount(dev_name, dir_name, type, flags, data) \
453 __sanitizer_syscall_pre_impl_mount((long)(dev_name), (long)(dir_name), \
454 (long)(type), (long)(flags), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800455 (long)(data))
456#define __sanitizer_syscall_post_mount(res, dev_name, dir_name, type, flags, \
457 data) \
458 __sanitizer_syscall_post_impl_mount(res, (long)(dev_name), (long)(dir_name), \
459 (long)(type), (long)(flags), \
460 (long)(data))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800461#define __sanitizer_syscall_pre_umount(name, flags) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800462 __sanitizer_syscall_pre_impl_umount((long)(name), (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800463#define __sanitizer_syscall_post_umount(res, name, flags) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800464 __sanitizer_syscall_post_impl_umount(res, (long)(name), (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800465#define __sanitizer_syscall_pre_oldumount(name) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800466 __sanitizer_syscall_pre_impl_oldumount((long)(name))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800467#define __sanitizer_syscall_post_oldumount(res, name) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800468 __sanitizer_syscall_post_impl_oldumount(res, (long)(name))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800469#define __sanitizer_syscall_pre_truncate(path, length) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800470 __sanitizer_syscall_pre_impl_truncate((long)(path), (long)(length))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800471#define __sanitizer_syscall_post_truncate(res, path, length) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800472 __sanitizer_syscall_post_impl_truncate(res, (long)(path), (long)(length))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800473#define __sanitizer_syscall_pre_ftruncate(fd, length) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800474 __sanitizer_syscall_pre_impl_ftruncate((long)(fd), (long)(length))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800475#define __sanitizer_syscall_post_ftruncate(res, fd, length) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800476 __sanitizer_syscall_post_impl_ftruncate(res, (long)(fd), (long)(length))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800477#define __sanitizer_syscall_pre_stat(filename, statbuf) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800478 __sanitizer_syscall_pre_impl_stat((long)(filename), (long)(statbuf))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800479#define __sanitizer_syscall_post_stat(res, filename, statbuf) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800480 __sanitizer_syscall_post_impl_stat(res, (long)(filename), (long)(statbuf))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800481#define __sanitizer_syscall_pre_statfs(path, buf) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800482 __sanitizer_syscall_pre_impl_statfs((long)(path), (long)(buf))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800483#define __sanitizer_syscall_post_statfs(res, path, buf) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800484 __sanitizer_syscall_post_impl_statfs(res, (long)(path), (long)(buf))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800485#define __sanitizer_syscall_pre_statfs64(path, sz, buf) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800486 __sanitizer_syscall_pre_impl_statfs64((long)(path), (long)(sz), (long)(buf))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800487#define __sanitizer_syscall_post_statfs64(res, path, sz, buf) \
488 __sanitizer_syscall_post_impl_statfs64(res, (long)(path), (long)(sz), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800489 (long)(buf))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800490#define __sanitizer_syscall_pre_fstatfs(fd, buf) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800491 __sanitizer_syscall_pre_impl_fstatfs((long)(fd), (long)(buf))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800492#define __sanitizer_syscall_post_fstatfs(res, fd, buf) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800493 __sanitizer_syscall_post_impl_fstatfs(res, (long)(fd), (long)(buf))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800494#define __sanitizer_syscall_pre_fstatfs64(fd, sz, buf) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800495 __sanitizer_syscall_pre_impl_fstatfs64((long)(fd), (long)(sz), (long)(buf))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800496#define __sanitizer_syscall_post_fstatfs64(res, fd, sz, buf) \
497 __sanitizer_syscall_post_impl_fstatfs64(res, (long)(fd), (long)(sz), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800498 (long)(buf))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800499#define __sanitizer_syscall_pre_lstat(filename, statbuf) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800500 __sanitizer_syscall_pre_impl_lstat((long)(filename), (long)(statbuf))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800501#define __sanitizer_syscall_post_lstat(res, filename, statbuf) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800502 __sanitizer_syscall_post_impl_lstat(res, (long)(filename), (long)(statbuf))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800503#define __sanitizer_syscall_pre_fstat(fd, statbuf) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800504 __sanitizer_syscall_pre_impl_fstat((long)(fd), (long)(statbuf))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800505#define __sanitizer_syscall_post_fstat(res, fd, statbuf) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800506 __sanitizer_syscall_post_impl_fstat(res, (long)(fd), (long)(statbuf))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800507#define __sanitizer_syscall_pre_newstat(filename, statbuf) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800508 __sanitizer_syscall_pre_impl_newstat((long)(filename), (long)(statbuf))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800509#define __sanitizer_syscall_post_newstat(res, filename, statbuf) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800510 __sanitizer_syscall_post_impl_newstat(res, (long)(filename), (long)(statbuf))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800511#define __sanitizer_syscall_pre_newlstat(filename, statbuf) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800512 __sanitizer_syscall_pre_impl_newlstat((long)(filename), (long)(statbuf))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800513#define __sanitizer_syscall_post_newlstat(res, filename, statbuf) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800514 __sanitizer_syscall_post_impl_newlstat(res, (long)(filename), (long)(statbuf))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800515#define __sanitizer_syscall_pre_newfstat(fd, statbuf) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800516 __sanitizer_syscall_pre_impl_newfstat((long)(fd), (long)(statbuf))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800517#define __sanitizer_syscall_post_newfstat(res, fd, statbuf) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800518 __sanitizer_syscall_post_impl_newfstat(res, (long)(fd), (long)(statbuf))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800519#define __sanitizer_syscall_pre_ustat(dev, ubuf) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800520 __sanitizer_syscall_pre_impl_ustat((long)(dev), (long)(ubuf))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800521#define __sanitizer_syscall_post_ustat(res, dev, ubuf) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800522 __sanitizer_syscall_post_impl_ustat(res, (long)(dev), (long)(ubuf))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800523#define __sanitizer_syscall_pre_stat64(filename, statbuf) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800524 __sanitizer_syscall_pre_impl_stat64((long)(filename), (long)(statbuf))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800525#define __sanitizer_syscall_post_stat64(res, filename, statbuf) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800526 __sanitizer_syscall_post_impl_stat64(res, (long)(filename), (long)(statbuf))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800527#define __sanitizer_syscall_pre_fstat64(fd, statbuf) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800528 __sanitizer_syscall_pre_impl_fstat64((long)(fd), (long)(statbuf))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800529#define __sanitizer_syscall_post_fstat64(res, fd, statbuf) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800530 __sanitizer_syscall_post_impl_fstat64(res, (long)(fd), (long)(statbuf))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800531#define __sanitizer_syscall_pre_lstat64(filename, statbuf) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800532 __sanitizer_syscall_pre_impl_lstat64((long)(filename), (long)(statbuf))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800533#define __sanitizer_syscall_post_lstat64(res, filename, statbuf) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800534 __sanitizer_syscall_post_impl_lstat64(res, (long)(filename), (long)(statbuf))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800535#define __sanitizer_syscall_pre_setxattr(path, name, value, size, flags) \
536 __sanitizer_syscall_pre_impl_setxattr( \
Logan Chien55afb0a2018-10-15 10:42:14 +0800537 (long)(path), (long)(name), (long)(value), (long)(size), (long)(flags))
538#define __sanitizer_syscall_post_setxattr(res, path, name, value, size, flags) \
539 __sanitizer_syscall_post_impl_setxattr(res, (long)(path), (long)(name), \
540 (long)(value), (long)(size), \
541 (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800542#define __sanitizer_syscall_pre_lsetxattr(path, name, value, size, flags) \
543 __sanitizer_syscall_pre_impl_lsetxattr( \
Logan Chien55afb0a2018-10-15 10:42:14 +0800544 (long)(path), (long)(name), (long)(value), (long)(size), (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800545#define __sanitizer_syscall_post_lsetxattr(res, path, name, value, size, \
546 flags) \
547 __sanitizer_syscall_post_impl_lsetxattr(res, (long)(path), (long)(name), \
548 (long)(value), (long)(size), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800549 (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800550#define __sanitizer_syscall_pre_fsetxattr(fd, name, value, size, flags) \
551 __sanitizer_syscall_pre_impl_fsetxattr( \
Logan Chien55afb0a2018-10-15 10:42:14 +0800552 (long)(fd), (long)(name), (long)(value), (long)(size), (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800553#define __sanitizer_syscall_post_fsetxattr(res, fd, name, value, size, flags) \
554 __sanitizer_syscall_post_impl_fsetxattr(res, (long)(fd), (long)(name), \
555 (long)(value), (long)(size), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800556 (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800557#define __sanitizer_syscall_pre_getxattr(path, name, value, size) \
558 __sanitizer_syscall_pre_impl_getxattr((long)(path), (long)(name), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800559 (long)(value), (long)(size))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800560#define __sanitizer_syscall_post_getxattr(res, path, name, value, size) \
561 __sanitizer_syscall_post_impl_getxattr(res, (long)(path), (long)(name), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800562 (long)(value), (long)(size))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800563#define __sanitizer_syscall_pre_lgetxattr(path, name, value, size) \
564 __sanitizer_syscall_pre_impl_lgetxattr((long)(path), (long)(name), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800565 (long)(value), (long)(size))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800566#define __sanitizer_syscall_post_lgetxattr(res, path, name, value, size) \
567 __sanitizer_syscall_post_impl_lgetxattr(res, (long)(path), (long)(name), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800568 (long)(value), (long)(size))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800569#define __sanitizer_syscall_pre_fgetxattr(fd, name, value, size) \
570 __sanitizer_syscall_pre_impl_fgetxattr((long)(fd), (long)(name), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800571 (long)(value), (long)(size))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800572#define __sanitizer_syscall_post_fgetxattr(res, fd, name, value, size) \
573 __sanitizer_syscall_post_impl_fgetxattr(res, (long)(fd), (long)(name), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800574 (long)(value), (long)(size))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800575#define __sanitizer_syscall_pre_listxattr(path, list, size) \
576 __sanitizer_syscall_pre_impl_listxattr((long)(path), (long)(list), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800577 (long)(size))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800578#define __sanitizer_syscall_post_listxattr(res, path, list, size) \
579 __sanitizer_syscall_post_impl_listxattr(res, (long)(path), (long)(list), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800580 (long)(size))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800581#define __sanitizer_syscall_pre_llistxattr(path, list, size) \
582 __sanitizer_syscall_pre_impl_llistxattr((long)(path), (long)(list), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800583 (long)(size))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800584#define __sanitizer_syscall_post_llistxattr(res, path, list, size) \
585 __sanitizer_syscall_post_impl_llistxattr(res, (long)(path), (long)(list), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800586 (long)(size))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800587#define __sanitizer_syscall_pre_flistxattr(fd, list, size) \
588 __sanitizer_syscall_pre_impl_flistxattr((long)(fd), (long)(list), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800589 (long)(size))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800590#define __sanitizer_syscall_post_flistxattr(res, fd, list, size) \
591 __sanitizer_syscall_post_impl_flistxattr(res, (long)(fd), (long)(list), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800592 (long)(size))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800593#define __sanitizer_syscall_pre_removexattr(path, name) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800594 __sanitizer_syscall_pre_impl_removexattr((long)(path), (long)(name))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800595#define __sanitizer_syscall_post_removexattr(res, path, name) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800596 __sanitizer_syscall_post_impl_removexattr(res, (long)(path), (long)(name))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800597#define __sanitizer_syscall_pre_lremovexattr(path, name) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800598 __sanitizer_syscall_pre_impl_lremovexattr((long)(path), (long)(name))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800599#define __sanitizer_syscall_post_lremovexattr(res, path, name) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800600 __sanitizer_syscall_post_impl_lremovexattr(res, (long)(path), (long)(name))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800601#define __sanitizer_syscall_pre_fremovexattr(fd, name) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800602 __sanitizer_syscall_pre_impl_fremovexattr((long)(fd), (long)(name))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800603#define __sanitizer_syscall_post_fremovexattr(res, fd, name) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800604 __sanitizer_syscall_post_impl_fremovexattr(res, (long)(fd), (long)(name))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800605#define __sanitizer_syscall_pre_brk(brk) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800606 __sanitizer_syscall_pre_impl_brk((long)(brk))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800607#define __sanitizer_syscall_post_brk(res, brk) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800608 __sanitizer_syscall_post_impl_brk(res, (long)(brk))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800609#define __sanitizer_syscall_pre_mprotect(start, len, prot) \
610 __sanitizer_syscall_pre_impl_mprotect((long)(start), (long)(len), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800611 (long)(prot))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800612#define __sanitizer_syscall_post_mprotect(res, start, len, prot) \
613 __sanitizer_syscall_post_impl_mprotect(res, (long)(start), (long)(len), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800614 (long)(prot))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800615#define __sanitizer_syscall_pre_mremap(addr, old_len, new_len, flags, \
616 new_addr) \
617 __sanitizer_syscall_pre_impl_mremap((long)(addr), (long)(old_len), \
618 (long)(new_len), (long)(flags), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800619 (long)(new_addr))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800620#define __sanitizer_syscall_post_mremap(res, addr, old_len, new_len, flags, \
621 new_addr) \
622 __sanitizer_syscall_post_impl_mremap(res, (long)(addr), (long)(old_len), \
623 (long)(new_len), (long)(flags), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800624 (long)(new_addr))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800625#define __sanitizer_syscall_pre_remap_file_pages(start, size, prot, pgoff, \
626 flags) \
627 __sanitizer_syscall_pre_impl_remap_file_pages( \
Logan Chien55afb0a2018-10-15 10:42:14 +0800628 (long)(start), (long)(size), (long)(prot), (long)(pgoff), (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800629#define __sanitizer_syscall_post_remap_file_pages(res, start, size, prot, \
630 pgoff, flags) \
631 __sanitizer_syscall_post_impl_remap_file_pages(res, (long)(start), \
632 (long)(size), (long)(prot), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800633 (long)(pgoff), (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800634#define __sanitizer_syscall_pre_msync(start, len, flags) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800635 __sanitizer_syscall_pre_impl_msync((long)(start), (long)(len), (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800636#define __sanitizer_syscall_post_msync(res, start, len, flags) \
637 __sanitizer_syscall_post_impl_msync(res, (long)(start), (long)(len), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800638 (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800639#define __sanitizer_syscall_pre_munmap(addr, len) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800640 __sanitizer_syscall_pre_impl_munmap((long)(addr), (long)(len))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800641#define __sanitizer_syscall_post_munmap(res, addr, len) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800642 __sanitizer_syscall_post_impl_munmap(res, (long)(addr), (long)(len))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800643#define __sanitizer_syscall_pre_mlock(start, len) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800644 __sanitizer_syscall_pre_impl_mlock((long)(start), (long)(len))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800645#define __sanitizer_syscall_post_mlock(res, start, len) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800646 __sanitizer_syscall_post_impl_mlock(res, (long)(start), (long)(len))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800647#define __sanitizer_syscall_pre_munlock(start, len) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800648 __sanitizer_syscall_pre_impl_munlock((long)(start), (long)(len))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800649#define __sanitizer_syscall_post_munlock(res, start, len) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800650 __sanitizer_syscall_post_impl_munlock(res, (long)(start), (long)(len))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800651#define __sanitizer_syscall_pre_mlockall(flags) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800652 __sanitizer_syscall_pre_impl_mlockall((long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800653#define __sanitizer_syscall_post_mlockall(res, flags) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800654 __sanitizer_syscall_post_impl_mlockall(res, (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800655#define __sanitizer_syscall_pre_munlockall() \
Logan Chien55afb0a2018-10-15 10:42:14 +0800656 __sanitizer_syscall_pre_impl_munlockall()
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800657#define __sanitizer_syscall_post_munlockall(res) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800658 __sanitizer_syscall_post_impl_munlockall(res)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800659#define __sanitizer_syscall_pre_madvise(start, len, behavior) \
660 __sanitizer_syscall_pre_impl_madvise((long)(start), (long)(len), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800661 (long)(behavior))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800662#define __sanitizer_syscall_post_madvise(res, start, len, behavior) \
663 __sanitizer_syscall_post_impl_madvise(res, (long)(start), (long)(len), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800664 (long)(behavior))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800665#define __sanitizer_syscall_pre_mincore(start, len, vec) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800666 __sanitizer_syscall_pre_impl_mincore((long)(start), (long)(len), (long)(vec))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800667#define __sanitizer_syscall_post_mincore(res, start, len, vec) \
668 __sanitizer_syscall_post_impl_mincore(res, (long)(start), (long)(len), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800669 (long)(vec))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800670#define __sanitizer_syscall_pre_pivot_root(new_root, put_old) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800671 __sanitizer_syscall_pre_impl_pivot_root((long)(new_root), (long)(put_old))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800672#define __sanitizer_syscall_post_pivot_root(res, new_root, put_old) \
673 __sanitizer_syscall_post_impl_pivot_root(res, (long)(new_root), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800674 (long)(put_old))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800675#define __sanitizer_syscall_pre_chroot(filename) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800676 __sanitizer_syscall_pre_impl_chroot((long)(filename))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800677#define __sanitizer_syscall_post_chroot(res, filename) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800678 __sanitizer_syscall_post_impl_chroot(res, (long)(filename))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800679#define __sanitizer_syscall_pre_mknod(filename, mode, dev) \
680 __sanitizer_syscall_pre_impl_mknod((long)(filename), (long)(mode), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800681 (long)(dev))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800682#define __sanitizer_syscall_post_mknod(res, filename, mode, dev) \
683 __sanitizer_syscall_post_impl_mknod(res, (long)(filename), (long)(mode), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800684 (long)(dev))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800685#define __sanitizer_syscall_pre_link(oldname, newname) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800686 __sanitizer_syscall_pre_impl_link((long)(oldname), (long)(newname))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800687#define __sanitizer_syscall_post_link(res, oldname, newname) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800688 __sanitizer_syscall_post_impl_link(res, (long)(oldname), (long)(newname))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800689#define __sanitizer_syscall_pre_symlink(old, new_) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800690 __sanitizer_syscall_pre_impl_symlink((long)(old), (long)(new_))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800691#define __sanitizer_syscall_post_symlink(res, old, new_) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800692 __sanitizer_syscall_post_impl_symlink(res, (long)(old), (long)(new_))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800693#define __sanitizer_syscall_pre_unlink(pathname) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800694 __sanitizer_syscall_pre_impl_unlink((long)(pathname))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800695#define __sanitizer_syscall_post_unlink(res, pathname) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800696 __sanitizer_syscall_post_impl_unlink(res, (long)(pathname))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800697#define __sanitizer_syscall_pre_rename(oldname, newname) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800698 __sanitizer_syscall_pre_impl_rename((long)(oldname), (long)(newname))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800699#define __sanitizer_syscall_post_rename(res, oldname, newname) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800700 __sanitizer_syscall_post_impl_rename(res, (long)(oldname), (long)(newname))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800701#define __sanitizer_syscall_pre_chmod(filename, mode) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800702 __sanitizer_syscall_pre_impl_chmod((long)(filename), (long)(mode))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800703#define __sanitizer_syscall_post_chmod(res, filename, mode) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800704 __sanitizer_syscall_post_impl_chmod(res, (long)(filename), (long)(mode))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800705#define __sanitizer_syscall_pre_fchmod(fd, mode) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800706 __sanitizer_syscall_pre_impl_fchmod((long)(fd), (long)(mode))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800707#define __sanitizer_syscall_post_fchmod(res, fd, mode) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800708 __sanitizer_syscall_post_impl_fchmod(res, (long)(fd), (long)(mode))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800709#define __sanitizer_syscall_pre_fcntl(fd, cmd, arg) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800710 __sanitizer_syscall_pre_impl_fcntl((long)(fd), (long)(cmd), (long)(arg))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800711#define __sanitizer_syscall_post_fcntl(res, fd, cmd, arg) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800712 __sanitizer_syscall_post_impl_fcntl(res, (long)(fd), (long)(cmd), (long)(arg))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800713#define __sanitizer_syscall_pre_fcntl64(fd, cmd, arg) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800714 __sanitizer_syscall_pre_impl_fcntl64((long)(fd), (long)(cmd), (long)(arg))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800715#define __sanitizer_syscall_post_fcntl64(res, fd, cmd, arg) \
716 __sanitizer_syscall_post_impl_fcntl64(res, (long)(fd), (long)(cmd), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800717 (long)(arg))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800718#define __sanitizer_syscall_pre_pipe(fildes) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800719 __sanitizer_syscall_pre_impl_pipe((long)(fildes))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800720#define __sanitizer_syscall_post_pipe(res, fildes) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800721 __sanitizer_syscall_post_impl_pipe(res, (long)(fildes))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800722#define __sanitizer_syscall_pre_pipe2(fildes, flags) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800723 __sanitizer_syscall_pre_impl_pipe2((long)(fildes), (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800724#define __sanitizer_syscall_post_pipe2(res, fildes, flags) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800725 __sanitizer_syscall_post_impl_pipe2(res, (long)(fildes), (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800726#define __sanitizer_syscall_pre_dup(fildes) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800727 __sanitizer_syscall_pre_impl_dup((long)(fildes))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800728#define __sanitizer_syscall_post_dup(res, fildes) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800729 __sanitizer_syscall_post_impl_dup(res, (long)(fildes))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800730#define __sanitizer_syscall_pre_dup2(oldfd, newfd) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800731 __sanitizer_syscall_pre_impl_dup2((long)(oldfd), (long)(newfd))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800732#define __sanitizer_syscall_post_dup2(res, oldfd, newfd) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800733 __sanitizer_syscall_post_impl_dup2(res, (long)(oldfd), (long)(newfd))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800734#define __sanitizer_syscall_pre_dup3(oldfd, newfd, flags) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800735 __sanitizer_syscall_pre_impl_dup3((long)(oldfd), (long)(newfd), (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800736#define __sanitizer_syscall_post_dup3(res, oldfd, newfd, flags) \
737 __sanitizer_syscall_post_impl_dup3(res, (long)(oldfd), (long)(newfd), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800738 (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800739#define __sanitizer_syscall_pre_ioperm(from, num, on) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800740 __sanitizer_syscall_pre_impl_ioperm((long)(from), (long)(num), (long)(on))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800741#define __sanitizer_syscall_post_ioperm(res, from, num, on) \
742 __sanitizer_syscall_post_impl_ioperm(res, (long)(from), (long)(num), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800743 (long)(on))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800744#define __sanitizer_syscall_pre_ioctl(fd, cmd, arg) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800745 __sanitizer_syscall_pre_impl_ioctl((long)(fd), (long)(cmd), (long)(arg))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800746#define __sanitizer_syscall_post_ioctl(res, fd, cmd, arg) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800747 __sanitizer_syscall_post_impl_ioctl(res, (long)(fd), (long)(cmd), (long)(arg))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800748#define __sanitizer_syscall_pre_flock(fd, cmd) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800749 __sanitizer_syscall_pre_impl_flock((long)(fd), (long)(cmd))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800750#define __sanitizer_syscall_post_flock(res, fd, cmd) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800751 __sanitizer_syscall_post_impl_flock(res, (long)(fd), (long)(cmd))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800752#define __sanitizer_syscall_pre_io_setup(nr_reqs, ctx) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800753 __sanitizer_syscall_pre_impl_io_setup((long)(nr_reqs), (long)(ctx))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800754#define __sanitizer_syscall_post_io_setup(res, nr_reqs, ctx) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800755 __sanitizer_syscall_post_impl_io_setup(res, (long)(nr_reqs), (long)(ctx))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800756#define __sanitizer_syscall_pre_io_destroy(ctx) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800757 __sanitizer_syscall_pre_impl_io_destroy((long)(ctx))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800758#define __sanitizer_syscall_post_io_destroy(res, ctx) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800759 __sanitizer_syscall_post_impl_io_destroy(res, (long)(ctx))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800760#define __sanitizer_syscall_pre_io_getevents(ctx_id, min_nr, nr, events, \
761 timeout) \
762 __sanitizer_syscall_pre_impl_io_getevents((long)(ctx_id), (long)(min_nr), \
763 (long)(nr), (long)(events), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800764 (long)(timeout))
765#define __sanitizer_syscall_post_io_getevents(res, ctx_id, min_nr, nr, events, \
766 timeout) \
767 __sanitizer_syscall_post_impl_io_getevents(res, (long)(ctx_id), \
768 (long)(min_nr), (long)(nr), \
769 (long)(events), (long)(timeout))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800770#define __sanitizer_syscall_pre_io_submit(ctx_id, arg1, arg2) \
771 __sanitizer_syscall_pre_impl_io_submit((long)(ctx_id), (long)(arg1), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800772 (long)(arg2))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800773#define __sanitizer_syscall_post_io_submit(res, ctx_id, arg1, arg2) \
774 __sanitizer_syscall_post_impl_io_submit(res, (long)(ctx_id), (long)(arg1), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800775 (long)(arg2))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800776#define __sanitizer_syscall_pre_io_cancel(ctx_id, iocb, result) \
777 __sanitizer_syscall_pre_impl_io_cancel((long)(ctx_id), (long)(iocb), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800778 (long)(result))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800779#define __sanitizer_syscall_post_io_cancel(res, ctx_id, iocb, result) \
780 __sanitizer_syscall_post_impl_io_cancel(res, (long)(ctx_id), (long)(iocb), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800781 (long)(result))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800782#define __sanitizer_syscall_pre_sendfile(out_fd, in_fd, offset, count) \
783 __sanitizer_syscall_pre_impl_sendfile((long)(out_fd), (long)(in_fd), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800784 (long)(offset), (long)(count))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800785#define __sanitizer_syscall_post_sendfile(res, out_fd, in_fd, offset, count) \
786 __sanitizer_syscall_post_impl_sendfile(res, (long)(out_fd), (long)(in_fd), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800787 (long)(offset), (long)(count))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800788#define __sanitizer_syscall_pre_sendfile64(out_fd, in_fd, offset, count) \
789 __sanitizer_syscall_pre_impl_sendfile64((long)(out_fd), (long)(in_fd), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800790 (long)(offset), (long)(count))
791#define __sanitizer_syscall_post_sendfile64(res, out_fd, in_fd, offset, count) \
792 __sanitizer_syscall_post_impl_sendfile64(res, (long)(out_fd), (long)(in_fd), \
793 (long)(offset), (long)(count))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800794#define __sanitizer_syscall_pre_readlink(path, buf, bufsiz) \
795 __sanitizer_syscall_pre_impl_readlink((long)(path), (long)(buf), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800796 (long)(bufsiz))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800797#define __sanitizer_syscall_post_readlink(res, path, buf, bufsiz) \
798 __sanitizer_syscall_post_impl_readlink(res, (long)(path), (long)(buf), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800799 (long)(bufsiz))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800800#define __sanitizer_syscall_pre_creat(pathname, mode) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800801 __sanitizer_syscall_pre_impl_creat((long)(pathname), (long)(mode))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800802#define __sanitizer_syscall_post_creat(res, pathname, mode) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800803 __sanitizer_syscall_post_impl_creat(res, (long)(pathname), (long)(mode))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800804#define __sanitizer_syscall_pre_open(filename, flags, mode) \
805 __sanitizer_syscall_pre_impl_open((long)(filename), (long)(flags), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800806 (long)(mode))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800807#define __sanitizer_syscall_post_open(res, filename, flags, mode) \
808 __sanitizer_syscall_post_impl_open(res, (long)(filename), (long)(flags), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800809 (long)(mode))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800810#define __sanitizer_syscall_pre_close(fd) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800811 __sanitizer_syscall_pre_impl_close((long)(fd))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800812#define __sanitizer_syscall_post_close(res, fd) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800813 __sanitizer_syscall_post_impl_close(res, (long)(fd))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800814#define __sanitizer_syscall_pre_access(filename, mode) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800815 __sanitizer_syscall_pre_impl_access((long)(filename), (long)(mode))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800816#define __sanitizer_syscall_post_access(res, filename, mode) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800817 __sanitizer_syscall_post_impl_access(res, (long)(filename), (long)(mode))
818#define __sanitizer_syscall_pre_vhangup() __sanitizer_syscall_pre_impl_vhangup()
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800819#define __sanitizer_syscall_post_vhangup(res) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800820 __sanitizer_syscall_post_impl_vhangup(res)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800821#define __sanitizer_syscall_pre_chown(filename, user, group) \
822 __sanitizer_syscall_pre_impl_chown((long)(filename), (long)(user), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800823 (long)(group))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800824#define __sanitizer_syscall_post_chown(res, filename, user, group) \
825 __sanitizer_syscall_post_impl_chown(res, (long)(filename), (long)(user), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800826 (long)(group))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800827#define __sanitizer_syscall_pre_lchown(filename, user, group) \
828 __sanitizer_syscall_pre_impl_lchown((long)(filename), (long)(user), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800829 (long)(group))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800830#define __sanitizer_syscall_post_lchown(res, filename, user, group) \
831 __sanitizer_syscall_post_impl_lchown(res, (long)(filename), (long)(user), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800832 (long)(group))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800833#define __sanitizer_syscall_pre_fchown(fd, user, group) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800834 __sanitizer_syscall_pre_impl_fchown((long)(fd), (long)(user), (long)(group))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800835#define __sanitizer_syscall_post_fchown(res, fd, user, group) \
836 __sanitizer_syscall_post_impl_fchown(res, (long)(fd), (long)(user), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800837 (long)(group))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800838#define __sanitizer_syscall_pre_chown16(filename, user, group) \
839 __sanitizer_syscall_pre_impl_chown16((long)(filename), (long)user, \
Logan Chien55afb0a2018-10-15 10:42:14 +0800840 (long)group)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800841#define __sanitizer_syscall_post_chown16(res, filename, user, group) \
842 __sanitizer_syscall_post_impl_chown16(res, (long)(filename), (long)user, \
Logan Chien55afb0a2018-10-15 10:42:14 +0800843 (long)group)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800844#define __sanitizer_syscall_pre_lchown16(filename, user, group) \
845 __sanitizer_syscall_pre_impl_lchown16((long)(filename), (long)user, \
Logan Chien55afb0a2018-10-15 10:42:14 +0800846 (long)group)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800847#define __sanitizer_syscall_post_lchown16(res, filename, user, group) \
848 __sanitizer_syscall_post_impl_lchown16(res, (long)(filename), (long)user, \
Logan Chien55afb0a2018-10-15 10:42:14 +0800849 (long)group)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800850#define __sanitizer_syscall_pre_fchown16(fd, user, group) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800851 __sanitizer_syscall_pre_impl_fchown16((long)(fd), (long)user, (long)group)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800852#define __sanitizer_syscall_post_fchown16(res, fd, user, group) \
853 __sanitizer_syscall_post_impl_fchown16(res, (long)(fd), (long)user, \
Logan Chien55afb0a2018-10-15 10:42:14 +0800854 (long)group)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800855#define __sanitizer_syscall_pre_setregid16(rgid, egid) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800856 __sanitizer_syscall_pre_impl_setregid16((long)rgid, (long)egid)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800857#define __sanitizer_syscall_post_setregid16(res, rgid, egid) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800858 __sanitizer_syscall_post_impl_setregid16(res, (long)rgid, (long)egid)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800859#define __sanitizer_syscall_pre_setgid16(gid) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800860 __sanitizer_syscall_pre_impl_setgid16((long)gid)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800861#define __sanitizer_syscall_post_setgid16(res, gid) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800862 __sanitizer_syscall_post_impl_setgid16(res, (long)gid)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800863#define __sanitizer_syscall_pre_setreuid16(ruid, euid) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800864 __sanitizer_syscall_pre_impl_setreuid16((long)ruid, (long)euid)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800865#define __sanitizer_syscall_post_setreuid16(res, ruid, euid) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800866 __sanitizer_syscall_post_impl_setreuid16(res, (long)ruid, (long)euid)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800867#define __sanitizer_syscall_pre_setuid16(uid) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800868 __sanitizer_syscall_pre_impl_setuid16((long)uid)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800869#define __sanitizer_syscall_post_setuid16(res, uid) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800870 __sanitizer_syscall_post_impl_setuid16(res, (long)uid)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800871#define __sanitizer_syscall_pre_setresuid16(ruid, euid, suid) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800872 __sanitizer_syscall_pre_impl_setresuid16((long)ruid, (long)euid, (long)suid)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800873#define __sanitizer_syscall_post_setresuid16(res, ruid, euid, suid) \
874 __sanitizer_syscall_post_impl_setresuid16(res, (long)ruid, (long)euid, \
Logan Chien55afb0a2018-10-15 10:42:14 +0800875 (long)suid)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800876#define __sanitizer_syscall_pre_getresuid16(ruid, euid, suid) \
877 __sanitizer_syscall_pre_impl_getresuid16((long)(ruid), (long)(euid), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800878 (long)(suid))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800879#define __sanitizer_syscall_post_getresuid16(res, ruid, euid, suid) \
880 __sanitizer_syscall_post_impl_getresuid16(res, (long)(ruid), (long)(euid), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800881 (long)(suid))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800882#define __sanitizer_syscall_pre_setresgid16(rgid, egid, sgid) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800883 __sanitizer_syscall_pre_impl_setresgid16((long)rgid, (long)egid, (long)sgid)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800884#define __sanitizer_syscall_post_setresgid16(res, rgid, egid, sgid) \
885 __sanitizer_syscall_post_impl_setresgid16(res, (long)rgid, (long)egid, \
Logan Chien55afb0a2018-10-15 10:42:14 +0800886 (long)sgid)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800887#define __sanitizer_syscall_pre_getresgid16(rgid, egid, sgid) \
888 __sanitizer_syscall_pre_impl_getresgid16((long)(rgid), (long)(egid), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800889 (long)(sgid))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800890#define __sanitizer_syscall_post_getresgid16(res, rgid, egid, sgid) \
891 __sanitizer_syscall_post_impl_getresgid16(res, (long)(rgid), (long)(egid), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800892 (long)(sgid))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800893#define __sanitizer_syscall_pre_setfsuid16(uid) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800894 __sanitizer_syscall_pre_impl_setfsuid16((long)uid)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800895#define __sanitizer_syscall_post_setfsuid16(res, uid) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800896 __sanitizer_syscall_post_impl_setfsuid16(res, (long)uid)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800897#define __sanitizer_syscall_pre_setfsgid16(gid) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800898 __sanitizer_syscall_pre_impl_setfsgid16((long)gid)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800899#define __sanitizer_syscall_post_setfsgid16(res, gid) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800900 __sanitizer_syscall_post_impl_setfsgid16(res, (long)gid)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800901#define __sanitizer_syscall_pre_getgroups16(gidsetsize, grouplist) \
902 __sanitizer_syscall_pre_impl_getgroups16((long)(gidsetsize), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800903 (long)(grouplist))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800904#define __sanitizer_syscall_post_getgroups16(res, gidsetsize, grouplist) \
905 __sanitizer_syscall_post_impl_getgroups16(res, (long)(gidsetsize), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800906 (long)(grouplist))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800907#define __sanitizer_syscall_pre_setgroups16(gidsetsize, grouplist) \
908 __sanitizer_syscall_pre_impl_setgroups16((long)(gidsetsize), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800909 (long)(grouplist))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800910#define __sanitizer_syscall_post_setgroups16(res, gidsetsize, grouplist) \
911 __sanitizer_syscall_post_impl_setgroups16(res, (long)(gidsetsize), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800912 (long)(grouplist))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800913#define __sanitizer_syscall_pre_getuid16() \
Logan Chien55afb0a2018-10-15 10:42:14 +0800914 __sanitizer_syscall_pre_impl_getuid16()
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800915#define __sanitizer_syscall_post_getuid16(res) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800916 __sanitizer_syscall_post_impl_getuid16(res)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800917#define __sanitizer_syscall_pre_geteuid16() \
Logan Chien55afb0a2018-10-15 10:42:14 +0800918 __sanitizer_syscall_pre_impl_geteuid16()
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800919#define __sanitizer_syscall_post_geteuid16(res) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800920 __sanitizer_syscall_post_impl_geteuid16(res)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800921#define __sanitizer_syscall_pre_getgid16() \
Logan Chien55afb0a2018-10-15 10:42:14 +0800922 __sanitizer_syscall_pre_impl_getgid16()
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800923#define __sanitizer_syscall_post_getgid16(res) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800924 __sanitizer_syscall_post_impl_getgid16(res)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800925#define __sanitizer_syscall_pre_getegid16() \
Logan Chien55afb0a2018-10-15 10:42:14 +0800926 __sanitizer_syscall_pre_impl_getegid16()
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800927#define __sanitizer_syscall_post_getegid16(res) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800928 __sanitizer_syscall_post_impl_getegid16(res)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800929#define __sanitizer_syscall_pre_utime(filename, times) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800930 __sanitizer_syscall_pre_impl_utime((long)(filename), (long)(times))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800931#define __sanitizer_syscall_post_utime(res, filename, times) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800932 __sanitizer_syscall_post_impl_utime(res, (long)(filename), (long)(times))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800933#define __sanitizer_syscall_pre_utimes(filename, utimes) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800934 __sanitizer_syscall_pre_impl_utimes((long)(filename), (long)(utimes))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800935#define __sanitizer_syscall_post_utimes(res, filename, utimes) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800936 __sanitizer_syscall_post_impl_utimes(res, (long)(filename), (long)(utimes))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800937#define __sanitizer_syscall_pre_lseek(fd, offset, origin) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800938 __sanitizer_syscall_pre_impl_lseek((long)(fd), (long)(offset), (long)(origin))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800939#define __sanitizer_syscall_post_lseek(res, fd, offset, origin) \
940 __sanitizer_syscall_post_impl_lseek(res, (long)(fd), (long)(offset), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800941 (long)(origin))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800942#define __sanitizer_syscall_pre_llseek(fd, offset_high, offset_low, result, \
943 origin) \
944 __sanitizer_syscall_pre_impl_llseek((long)(fd), (long)(offset_high), \
945 (long)(offset_low), (long)(result), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800946 (long)(origin))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800947#define __sanitizer_syscall_post_llseek(res, fd, offset_high, offset_low, \
948 result, origin) \
949 __sanitizer_syscall_post_impl_llseek(res, (long)(fd), (long)(offset_high), \
950 (long)(offset_low), (long)(result), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800951 (long)(origin))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800952#define __sanitizer_syscall_pre_read(fd, buf, count) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800953 __sanitizer_syscall_pre_impl_read((long)(fd), (long)(buf), (long)(count))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800954#define __sanitizer_syscall_post_read(res, fd, buf, count) \
955 __sanitizer_syscall_post_impl_read(res, (long)(fd), (long)(buf), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800956 (long)(count))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800957#define __sanitizer_syscall_pre_readv(fd, vec, vlen) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800958 __sanitizer_syscall_pre_impl_readv((long)(fd), (long)(vec), (long)(vlen))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800959#define __sanitizer_syscall_post_readv(res, fd, vec, vlen) \
960 __sanitizer_syscall_post_impl_readv(res, (long)(fd), (long)(vec), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800961 (long)(vlen))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800962#define __sanitizer_syscall_pre_write(fd, buf, count) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800963 __sanitizer_syscall_pre_impl_write((long)(fd), (long)(buf), (long)(count))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800964#define __sanitizer_syscall_post_write(res, fd, buf, count) \
965 __sanitizer_syscall_post_impl_write(res, (long)(fd), (long)(buf), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800966 (long)(count))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800967#define __sanitizer_syscall_pre_writev(fd, vec, vlen) \
Logan Chien55afb0a2018-10-15 10:42:14 +0800968 __sanitizer_syscall_pre_impl_writev((long)(fd), (long)(vec), (long)(vlen))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800969#define __sanitizer_syscall_post_writev(res, fd, vec, vlen) \
970 __sanitizer_syscall_post_impl_writev(res, (long)(fd), (long)(vec), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800971 (long)(vlen))
972
973#ifdef _LP64
974#define __sanitizer_syscall_pre_pread64(fd, buf, count, pos) \
975 __sanitizer_syscall_pre_impl_pread64((long)(fd), (long)(buf), (long)(count), \
976 (long)(pos))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800977#define __sanitizer_syscall_post_pread64(res, fd, buf, count, pos) \
978 __sanitizer_syscall_post_impl_pread64(res, (long)(fd), (long)(buf), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800979 (long)(count), (long)(pos))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800980#define __sanitizer_syscall_pre_pwrite64(fd, buf, count, pos) \
981 __sanitizer_syscall_pre_impl_pwrite64((long)(fd), (long)(buf), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800982 (long)(count), (long)(pos))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800983#define __sanitizer_syscall_post_pwrite64(res, fd, buf, count, pos) \
984 __sanitizer_syscall_post_impl_pwrite64(res, (long)(fd), (long)(buf), \
Logan Chien55afb0a2018-10-15 10:42:14 +0800985 (long)(count), (long)(pos))
986#else
987#define __sanitizer_syscall_pre_pread64(fd, buf, count, pos0, pos1) \
988 __sanitizer_syscall_pre_impl_pread64((long)(fd), (long)(buf), (long)(count), \
989 (long)(pos0), (long)(pos1))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800990#define __sanitizer_syscall_post_pread64(res, fd, buf, count, pos0, pos1) \
991 __sanitizer_syscall_post_impl_pread64( \
992 res, (long)(fd), (long)(buf), (long)(count), (long)(pos0), (long)(pos1))
993#define __sanitizer_syscall_pre_pwrite64(fd, buf, count, pos0, pos1) \
994 __sanitizer_syscall_pre_impl_pwrite64( \
Logan Chien55afb0a2018-10-15 10:42:14 +0800995 (long)(fd), (long)(buf), (long)(count), (long)(pos0), (long)(pos1))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -0800996#define __sanitizer_syscall_post_pwrite64(res, fd, buf, count, pos0, pos1) \
997 __sanitizer_syscall_post_impl_pwrite64( \
Logan Chien55afb0a2018-10-15 10:42:14 +0800998 res, (long)(fd), (long)(buf), (long)(count), (long)(pos0), (long)(pos1))
999#endif
1000
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001001#define __sanitizer_syscall_pre_preadv(fd, vec, vlen, pos_l, pos_h) \
1002 __sanitizer_syscall_pre_impl_preadv((long)(fd), (long)(vec), (long)(vlen), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001003 (long)(pos_l), (long)(pos_h))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001004#define __sanitizer_syscall_post_preadv(res, fd, vec, vlen, pos_l, pos_h) \
1005 __sanitizer_syscall_post_impl_preadv(res, (long)(fd), (long)(vec), \
1006 (long)(vlen), (long)(pos_l), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001007 (long)(pos_h))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001008#define __sanitizer_syscall_pre_pwritev(fd, vec, vlen, pos_l, pos_h) \
1009 __sanitizer_syscall_pre_impl_pwritev((long)(fd), (long)(vec), (long)(vlen), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001010 (long)(pos_l), (long)(pos_h))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001011#define __sanitizer_syscall_post_pwritev(res, fd, vec, vlen, pos_l, pos_h) \
1012 __sanitizer_syscall_post_impl_pwritev(res, (long)(fd), (long)(vec), \
1013 (long)(vlen), (long)(pos_l), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001014 (long)(pos_h))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001015#define __sanitizer_syscall_pre_getcwd(buf, size) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001016 __sanitizer_syscall_pre_impl_getcwd((long)(buf), (long)(size))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001017#define __sanitizer_syscall_post_getcwd(res, buf, size) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001018 __sanitizer_syscall_post_impl_getcwd(res, (long)(buf), (long)(size))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001019#define __sanitizer_syscall_pre_mkdir(pathname, mode) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001020 __sanitizer_syscall_pre_impl_mkdir((long)(pathname), (long)(mode))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001021#define __sanitizer_syscall_post_mkdir(res, pathname, mode) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001022 __sanitizer_syscall_post_impl_mkdir(res, (long)(pathname), (long)(mode))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001023#define __sanitizer_syscall_pre_chdir(filename) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001024 __sanitizer_syscall_pre_impl_chdir((long)(filename))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001025#define __sanitizer_syscall_post_chdir(res, filename) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001026 __sanitizer_syscall_post_impl_chdir(res, (long)(filename))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001027#define __sanitizer_syscall_pre_fchdir(fd) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001028 __sanitizer_syscall_pre_impl_fchdir((long)(fd))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001029#define __sanitizer_syscall_post_fchdir(res, fd) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001030 __sanitizer_syscall_post_impl_fchdir(res, (long)(fd))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001031#define __sanitizer_syscall_pre_rmdir(pathname) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001032 __sanitizer_syscall_pre_impl_rmdir((long)(pathname))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001033#define __sanitizer_syscall_post_rmdir(res, pathname) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001034 __sanitizer_syscall_post_impl_rmdir(res, (long)(pathname))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001035#define __sanitizer_syscall_pre_lookup_dcookie(cookie64, buf, len) \
1036 __sanitizer_syscall_pre_impl_lookup_dcookie((long)(cookie64), (long)(buf), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001037 (long)(len))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001038#define __sanitizer_syscall_post_lookup_dcookie(res, cookie64, buf, len) \
1039 __sanitizer_syscall_post_impl_lookup_dcookie(res, (long)(cookie64), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001040 (long)(buf), (long)(len))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001041#define __sanitizer_syscall_pre_quotactl(cmd, special, id, addr) \
1042 __sanitizer_syscall_pre_impl_quotactl((long)(cmd), (long)(special), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001043 (long)(id), (long)(addr))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001044#define __sanitizer_syscall_post_quotactl(res, cmd, special, id, addr) \
1045 __sanitizer_syscall_post_impl_quotactl(res, (long)(cmd), (long)(special), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001046 (long)(id), (long)(addr))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001047#define __sanitizer_syscall_pre_getdents(fd, dirent, count) \
1048 __sanitizer_syscall_pre_impl_getdents((long)(fd), (long)(dirent), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001049 (long)(count))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001050#define __sanitizer_syscall_post_getdents(res, fd, dirent, count) \
1051 __sanitizer_syscall_post_impl_getdents(res, (long)(fd), (long)(dirent), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001052 (long)(count))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001053#define __sanitizer_syscall_pre_getdents64(fd, dirent, count) \
1054 __sanitizer_syscall_pre_impl_getdents64((long)(fd), (long)(dirent), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001055 (long)(count))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001056#define __sanitizer_syscall_post_getdents64(res, fd, dirent, count) \
1057 __sanitizer_syscall_post_impl_getdents64(res, (long)(fd), (long)(dirent), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001058 (long)(count))
1059#define __sanitizer_syscall_pre_setsockopt(fd, level, optname, optval, optlen) \
1060 __sanitizer_syscall_pre_impl_setsockopt((long)(fd), (long)(level), \
1061 (long)(optname), (long)(optval), \
1062 (long)(optlen))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001063#define __sanitizer_syscall_post_setsockopt(res, fd, level, optname, optval, \
1064 optlen) \
1065 __sanitizer_syscall_post_impl_setsockopt(res, (long)(fd), (long)(level), \
1066 (long)(optname), (long)(optval), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001067 (long)(optlen))
1068#define __sanitizer_syscall_pre_getsockopt(fd, level, optname, optval, optlen) \
1069 __sanitizer_syscall_pre_impl_getsockopt((long)(fd), (long)(level), \
1070 (long)(optname), (long)(optval), \
1071 (long)(optlen))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001072#define __sanitizer_syscall_post_getsockopt(res, fd, level, optname, optval, \
1073 optlen) \
1074 __sanitizer_syscall_post_impl_getsockopt(res, (long)(fd), (long)(level), \
1075 (long)(optname), (long)(optval), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001076 (long)(optlen))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001077#define __sanitizer_syscall_pre_bind(arg0, arg1, arg2) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001078 __sanitizer_syscall_pre_impl_bind((long)(arg0), (long)(arg1), (long)(arg2))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001079#define __sanitizer_syscall_post_bind(res, arg0, arg1, arg2) \
1080 __sanitizer_syscall_post_impl_bind(res, (long)(arg0), (long)(arg1), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001081 (long)(arg2))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001082#define __sanitizer_syscall_pre_connect(arg0, arg1, arg2) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001083 __sanitizer_syscall_pre_impl_connect((long)(arg0), (long)(arg1), (long)(arg2))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001084#define __sanitizer_syscall_post_connect(res, arg0, arg1, arg2) \
1085 __sanitizer_syscall_post_impl_connect(res, (long)(arg0), (long)(arg1), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001086 (long)(arg2))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001087#define __sanitizer_syscall_pre_accept(arg0, arg1, arg2) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001088 __sanitizer_syscall_pre_impl_accept((long)(arg0), (long)(arg1), (long)(arg2))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001089#define __sanitizer_syscall_post_accept(res, arg0, arg1, arg2) \
1090 __sanitizer_syscall_post_impl_accept(res, (long)(arg0), (long)(arg1), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001091 (long)(arg2))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001092#define __sanitizer_syscall_pre_accept4(arg0, arg1, arg2, arg3) \
1093 __sanitizer_syscall_pre_impl_accept4((long)(arg0), (long)(arg1), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001094 (long)(arg2), (long)(arg3))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001095#define __sanitizer_syscall_post_accept4(res, arg0, arg1, arg2, arg3) \
1096 __sanitizer_syscall_post_impl_accept4(res, (long)(arg0), (long)(arg1), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001097 (long)(arg2), (long)(arg3))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001098#define __sanitizer_syscall_pre_getsockname(arg0, arg1, arg2) \
1099 __sanitizer_syscall_pre_impl_getsockname((long)(arg0), (long)(arg1), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001100 (long)(arg2))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001101#define __sanitizer_syscall_post_getsockname(res, arg0, arg1, arg2) \
1102 __sanitizer_syscall_post_impl_getsockname(res, (long)(arg0), (long)(arg1), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001103 (long)(arg2))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001104#define __sanitizer_syscall_pre_getpeername(arg0, arg1, arg2) \
1105 __sanitizer_syscall_pre_impl_getpeername((long)(arg0), (long)(arg1), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001106 (long)(arg2))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001107#define __sanitizer_syscall_post_getpeername(res, arg0, arg1, arg2) \
1108 __sanitizer_syscall_post_impl_getpeername(res, (long)(arg0), (long)(arg1), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001109 (long)(arg2))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001110#define __sanitizer_syscall_pre_send(arg0, arg1, arg2, arg3) \
1111 __sanitizer_syscall_pre_impl_send((long)(arg0), (long)(arg1), (long)(arg2), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001112 (long)(arg3))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001113#define __sanitizer_syscall_post_send(res, arg0, arg1, arg2, arg3) \
1114 __sanitizer_syscall_post_impl_send(res, (long)(arg0), (long)(arg1), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001115 (long)(arg2), (long)(arg3))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001116#define __sanitizer_syscall_pre_sendto(arg0, arg1, arg2, arg3, arg4, arg5) \
1117 __sanitizer_syscall_pre_impl_sendto((long)(arg0), (long)(arg1), \
1118 (long)(arg2), (long)(arg3), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001119 (long)(arg4), (long)(arg5))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001120#define __sanitizer_syscall_post_sendto(res, arg0, arg1, arg2, arg3, arg4, \
1121 arg5) \
1122 __sanitizer_syscall_post_impl_sendto(res, (long)(arg0), (long)(arg1), \
1123 (long)(arg2), (long)(arg3), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001124 (long)(arg4), (long)(arg5))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001125#define __sanitizer_syscall_pre_sendmsg(fd, msg, flags) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001126 __sanitizer_syscall_pre_impl_sendmsg((long)(fd), (long)(msg), (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001127#define __sanitizer_syscall_post_sendmsg(res, fd, msg, flags) \
1128 __sanitizer_syscall_post_impl_sendmsg(res, (long)(fd), (long)(msg), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001129 (long)(flags))
1130#define __sanitizer_syscall_pre_sendmmsg(fd, msg, vlen, flags) \
1131 __sanitizer_syscall_pre_impl_sendmmsg((long)(fd), (long)(msg), (long)(vlen), \
1132 (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001133#define __sanitizer_syscall_post_sendmmsg(res, fd, msg, vlen, flags) \
1134 __sanitizer_syscall_post_impl_sendmmsg(res, (long)(fd), (long)(msg), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001135 (long)(vlen), (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001136#define __sanitizer_syscall_pre_recv(arg0, arg1, arg2, arg3) \
1137 __sanitizer_syscall_pre_impl_recv((long)(arg0), (long)(arg1), (long)(arg2), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001138 (long)(arg3))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001139#define __sanitizer_syscall_post_recv(res, arg0, arg1, arg2, arg3) \
1140 __sanitizer_syscall_post_impl_recv(res, (long)(arg0), (long)(arg1), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001141 (long)(arg2), (long)(arg3))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001142#define __sanitizer_syscall_pre_recvfrom(arg0, arg1, arg2, arg3, arg4, arg5) \
1143 __sanitizer_syscall_pre_impl_recvfrom((long)(arg0), (long)(arg1), \
1144 (long)(arg2), (long)(arg3), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001145 (long)(arg4), (long)(arg5))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001146#define __sanitizer_syscall_post_recvfrom(res, arg0, arg1, arg2, arg3, arg4, \
1147 arg5) \
1148 __sanitizer_syscall_post_impl_recvfrom(res, (long)(arg0), (long)(arg1), \
1149 (long)(arg2), (long)(arg3), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001150 (long)(arg4), (long)(arg5))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001151#define __sanitizer_syscall_pre_recvmsg(fd, msg, flags) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001152 __sanitizer_syscall_pre_impl_recvmsg((long)(fd), (long)(msg), (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001153#define __sanitizer_syscall_post_recvmsg(res, fd, msg, flags) \
1154 __sanitizer_syscall_post_impl_recvmsg(res, (long)(fd), (long)(msg), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001155 (long)(flags))
1156#define __sanitizer_syscall_pre_recvmmsg(fd, msg, vlen, flags, timeout) \
1157 __sanitizer_syscall_pre_impl_recvmmsg((long)(fd), (long)(msg), (long)(vlen), \
1158 (long)(flags), (long)(timeout))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001159#define __sanitizer_syscall_post_recvmmsg(res, fd, msg, vlen, flags, timeout) \
1160 __sanitizer_syscall_post_impl_recvmmsg(res, (long)(fd), (long)(msg), \
1161 (long)(vlen), (long)(flags), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001162 (long)(timeout))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001163#define __sanitizer_syscall_pre_socket(arg0, arg1, arg2) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001164 __sanitizer_syscall_pre_impl_socket((long)(arg0), (long)(arg1), (long)(arg2))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001165#define __sanitizer_syscall_post_socket(res, arg0, arg1, arg2) \
1166 __sanitizer_syscall_post_impl_socket(res, (long)(arg0), (long)(arg1), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001167 (long)(arg2))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001168#define __sanitizer_syscall_pre_socketpair(arg0, arg1, arg2, arg3) \
1169 __sanitizer_syscall_pre_impl_socketpair((long)(arg0), (long)(arg1), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001170 (long)(arg2), (long)(arg3))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001171#define __sanitizer_syscall_post_socketpair(res, arg0, arg1, arg2, arg3) \
1172 __sanitizer_syscall_post_impl_socketpair(res, (long)(arg0), (long)(arg1), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001173 (long)(arg2), (long)(arg3))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001174#define __sanitizer_syscall_pre_socketcall(call, args) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001175 __sanitizer_syscall_pre_impl_socketcall((long)(call), (long)(args))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001176#define __sanitizer_syscall_post_socketcall(res, call, args) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001177 __sanitizer_syscall_post_impl_socketcall(res, (long)(call), (long)(args))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001178#define __sanitizer_syscall_pre_listen(arg0, arg1) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001179 __sanitizer_syscall_pre_impl_listen((long)(arg0), (long)(arg1))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001180#define __sanitizer_syscall_post_listen(res, arg0, arg1) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001181 __sanitizer_syscall_post_impl_listen(res, (long)(arg0), (long)(arg1))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001182#define __sanitizer_syscall_pre_poll(ufds, nfds, timeout) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001183 __sanitizer_syscall_pre_impl_poll((long)(ufds), (long)(nfds), (long)(timeout))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001184#define __sanitizer_syscall_post_poll(res, ufds, nfds, timeout) \
1185 __sanitizer_syscall_post_impl_poll(res, (long)(ufds), (long)(nfds), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001186 (long)(timeout))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001187#define __sanitizer_syscall_pre_select(n, inp, outp, exp, tvp) \
1188 __sanitizer_syscall_pre_impl_select((long)(n), (long)(inp), (long)(outp), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001189 (long)(exp), (long)(tvp))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001190#define __sanitizer_syscall_post_select(res, n, inp, outp, exp, tvp) \
1191 __sanitizer_syscall_post_impl_select(res, (long)(n), (long)(inp), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001192 (long)(outp), (long)(exp), (long)(tvp))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001193#define __sanitizer_syscall_pre_old_select(arg) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001194 __sanitizer_syscall_pre_impl_old_select((long)(arg))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001195#define __sanitizer_syscall_post_old_select(res, arg) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001196 __sanitizer_syscall_post_impl_old_select(res, (long)(arg))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001197#define __sanitizer_syscall_pre_epoll_create(size) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001198 __sanitizer_syscall_pre_impl_epoll_create((long)(size))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001199#define __sanitizer_syscall_post_epoll_create(res, size) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001200 __sanitizer_syscall_post_impl_epoll_create(res, (long)(size))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001201#define __sanitizer_syscall_pre_epoll_create1(flags) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001202 __sanitizer_syscall_pre_impl_epoll_create1((long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001203#define __sanitizer_syscall_post_epoll_create1(res, flags) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001204 __sanitizer_syscall_post_impl_epoll_create1(res, (long)(flags))
1205#define __sanitizer_syscall_pre_epoll_ctl(epfd, op, fd, event) \
1206 __sanitizer_syscall_pre_impl_epoll_ctl((long)(epfd), (long)(op), (long)(fd), \
1207 (long)(event))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001208#define __sanitizer_syscall_post_epoll_ctl(res, epfd, op, fd, event) \
1209 __sanitizer_syscall_post_impl_epoll_ctl(res, (long)(epfd), (long)(op), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001210 (long)(fd), (long)(event))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001211#define __sanitizer_syscall_pre_epoll_wait(epfd, events, maxevents, timeout) \
1212 __sanitizer_syscall_pre_impl_epoll_wait((long)(epfd), (long)(events), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001213 (long)(maxevents), (long)(timeout))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001214#define __sanitizer_syscall_post_epoll_wait(res, epfd, events, maxevents, \
1215 timeout) \
1216 __sanitizer_syscall_post_impl_epoll_wait(res, (long)(epfd), (long)(events), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001217 (long)(maxevents), (long)(timeout))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001218#define __sanitizer_syscall_pre_epoll_pwait(epfd, events, maxevents, timeout, \
1219 sigmask, sigsetsize) \
1220 __sanitizer_syscall_pre_impl_epoll_pwait( \
1221 (long)(epfd), (long)(events), (long)(maxevents), (long)(timeout), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001222 (long)(sigmask), (long)(sigsetsize))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001223#define __sanitizer_syscall_post_epoll_pwait(res, epfd, events, maxevents, \
1224 timeout, sigmask, sigsetsize) \
1225 __sanitizer_syscall_post_impl_epoll_pwait( \
1226 res, (long)(epfd), (long)(events), (long)(maxevents), (long)(timeout), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001227 (long)(sigmask), (long)(sigsetsize))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001228#define __sanitizer_syscall_pre_epoll_pwait2(epfd, events, maxevents, timeout, \
1229 sigmask, sigsetsize) \
1230 __sanitizer_syscall_pre_impl_epoll_pwait2( \
1231 (long)(epfd), (long)(events), (long)(maxevents), (long)(timeout), \
1232 (long)(sigmask), (long)(sigsetsize))
1233#define __sanitizer_syscall_post_epoll_pwait2(res, epfd, events, maxevents, \
1234 timeout, sigmask, sigsetsize) \
1235 __sanitizer_syscall_post_impl_epoll_pwait2( \
1236 res, (long)(epfd), (long)(events), (long)(maxevents), (long)(timeout), \
1237 (long)(sigmask), (long)(sigsetsize))
1238#define __sanitizer_syscall_pre_gethostname(name, len) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001239 __sanitizer_syscall_pre_impl_gethostname((long)(name), (long)(len))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001240#define __sanitizer_syscall_post_gethostname(res, name, len) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001241 __sanitizer_syscall_post_impl_gethostname(res, (long)(name), (long)(len))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001242#define __sanitizer_syscall_pre_sethostname(name, len) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001243 __sanitizer_syscall_pre_impl_sethostname((long)(name), (long)(len))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001244#define __sanitizer_syscall_post_sethostname(res, name, len) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001245 __sanitizer_syscall_post_impl_sethostname(res, (long)(name), (long)(len))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001246#define __sanitizer_syscall_pre_setdomainname(name, len) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001247 __sanitizer_syscall_pre_impl_setdomainname((long)(name), (long)(len))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001248#define __sanitizer_syscall_post_setdomainname(res, name, len) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001249 __sanitizer_syscall_post_impl_setdomainname(res, (long)(name), (long)(len))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001250#define __sanitizer_syscall_pre_newuname(name) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001251 __sanitizer_syscall_pre_impl_newuname((long)(name))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001252#define __sanitizer_syscall_post_newuname(res, name) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001253 __sanitizer_syscall_post_impl_newuname(res, (long)(name))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001254#define __sanitizer_syscall_pre_uname(arg0) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001255 __sanitizer_syscall_pre_impl_uname((long)(arg0))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001256#define __sanitizer_syscall_post_uname(res, arg0) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001257 __sanitizer_syscall_post_impl_uname(res, (long)(arg0))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001258#define __sanitizer_syscall_pre_olduname(arg0) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001259 __sanitizer_syscall_pre_impl_olduname((long)(arg0))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001260#define __sanitizer_syscall_post_olduname(res, arg0) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001261 __sanitizer_syscall_post_impl_olduname(res, (long)(arg0))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001262#define __sanitizer_syscall_pre_getrlimit(resource, rlim) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001263 __sanitizer_syscall_pre_impl_getrlimit((long)(resource), (long)(rlim))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001264#define __sanitizer_syscall_post_getrlimit(res, resource, rlim) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001265 __sanitizer_syscall_post_impl_getrlimit(res, (long)(resource), (long)(rlim))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001266#define __sanitizer_syscall_pre_old_getrlimit(resource, rlim) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001267 __sanitizer_syscall_pre_impl_old_getrlimit((long)(resource), (long)(rlim))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001268#define __sanitizer_syscall_post_old_getrlimit(res, resource, rlim) \
1269 __sanitizer_syscall_post_impl_old_getrlimit(res, (long)(resource), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001270 (long)(rlim))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001271#define __sanitizer_syscall_pre_setrlimit(resource, rlim) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001272 __sanitizer_syscall_pre_impl_setrlimit((long)(resource), (long)(rlim))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001273#define __sanitizer_syscall_post_setrlimit(res, resource, rlim) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001274 __sanitizer_syscall_post_impl_setrlimit(res, (long)(resource), (long)(rlim))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001275#define __sanitizer_syscall_pre_prlimit64(pid, resource, new_rlim, old_rlim) \
1276 __sanitizer_syscall_pre_impl_prlimit64((long)(pid), (long)(resource), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001277 (long)(new_rlim), (long)(old_rlim))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001278#define __sanitizer_syscall_post_prlimit64(res, pid, resource, new_rlim, \
1279 old_rlim) \
1280 __sanitizer_syscall_post_impl_prlimit64(res, (long)(pid), (long)(resource), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001281 (long)(new_rlim), (long)(old_rlim))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001282#define __sanitizer_syscall_pre_getrusage(who, ru) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001283 __sanitizer_syscall_pre_impl_getrusage((long)(who), (long)(ru))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001284#define __sanitizer_syscall_post_getrusage(res, who, ru) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001285 __sanitizer_syscall_post_impl_getrusage(res, (long)(who), (long)(ru))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001286#define __sanitizer_syscall_pre_umask(mask) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001287 __sanitizer_syscall_pre_impl_umask((long)(mask))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001288#define __sanitizer_syscall_post_umask(res, mask) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001289 __sanitizer_syscall_post_impl_umask(res, (long)(mask))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001290#define __sanitizer_syscall_pre_msgget(key, msgflg) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001291 __sanitizer_syscall_pre_impl_msgget((long)(key), (long)(msgflg))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001292#define __sanitizer_syscall_post_msgget(res, key, msgflg) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001293 __sanitizer_syscall_post_impl_msgget(res, (long)(key), (long)(msgflg))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001294#define __sanitizer_syscall_pre_msgsnd(msqid, msgp, msgsz, msgflg) \
1295 __sanitizer_syscall_pre_impl_msgsnd((long)(msqid), (long)(msgp), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001296 (long)(msgsz), (long)(msgflg))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001297#define __sanitizer_syscall_post_msgsnd(res, msqid, msgp, msgsz, msgflg) \
1298 __sanitizer_syscall_post_impl_msgsnd(res, (long)(msqid), (long)(msgp), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001299 (long)(msgsz), (long)(msgflg))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001300#define __sanitizer_syscall_pre_msgrcv(msqid, msgp, msgsz, msgtyp, msgflg) \
1301 __sanitizer_syscall_pre_impl_msgrcv((long)(msqid), (long)(msgp), \
1302 (long)(msgsz), (long)(msgtyp), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001303 (long)(msgflg))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001304#define __sanitizer_syscall_post_msgrcv(res, msqid, msgp, msgsz, msgtyp, \
1305 msgflg) \
1306 __sanitizer_syscall_post_impl_msgrcv(res, (long)(msqid), (long)(msgp), \
1307 (long)(msgsz), (long)(msgtyp), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001308 (long)(msgflg))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001309#define __sanitizer_syscall_pre_msgctl(msqid, cmd, buf) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001310 __sanitizer_syscall_pre_impl_msgctl((long)(msqid), (long)(cmd), (long)(buf))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001311#define __sanitizer_syscall_post_msgctl(res, msqid, cmd, buf) \
1312 __sanitizer_syscall_post_impl_msgctl(res, (long)(msqid), (long)(cmd), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001313 (long)(buf))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001314#define __sanitizer_syscall_pre_semget(key, nsems, semflg) \
1315 __sanitizer_syscall_pre_impl_semget((long)(key), (long)(nsems), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001316 (long)(semflg))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001317#define __sanitizer_syscall_post_semget(res, key, nsems, semflg) \
1318 __sanitizer_syscall_post_impl_semget(res, (long)(key), (long)(nsems), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001319 (long)(semflg))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001320#define __sanitizer_syscall_pre_semop(semid, sops, nsops) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001321 __sanitizer_syscall_pre_impl_semop((long)(semid), (long)(sops), (long)(nsops))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001322#define __sanitizer_syscall_post_semop(res, semid, sops, nsops) \
1323 __sanitizer_syscall_post_impl_semop(res, (long)(semid), (long)(sops), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001324 (long)(nsops))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001325#define __sanitizer_syscall_pre_semctl(semid, semnum, cmd, arg) \
1326 __sanitizer_syscall_pre_impl_semctl((long)(semid), (long)(semnum), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001327 (long)(cmd), (long)(arg))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001328#define __sanitizer_syscall_post_semctl(res, semid, semnum, cmd, arg) \
1329 __sanitizer_syscall_post_impl_semctl(res, (long)(semid), (long)(semnum), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001330 (long)(cmd), (long)(arg))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001331#define __sanitizer_syscall_pre_semtimedop(semid, sops, nsops, timeout) \
1332 __sanitizer_syscall_pre_impl_semtimedop((long)(semid), (long)(sops), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001333 (long)(nsops), (long)(timeout))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001334#define __sanitizer_syscall_post_semtimedop(res, semid, sops, nsops, timeout) \
1335 __sanitizer_syscall_post_impl_semtimedop(res, (long)(semid), (long)(sops), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001336 (long)(nsops), (long)(timeout))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001337#define __sanitizer_syscall_pre_shmat(shmid, shmaddr, shmflg) \
1338 __sanitizer_syscall_pre_impl_shmat((long)(shmid), (long)(shmaddr), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001339 (long)(shmflg))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001340#define __sanitizer_syscall_post_shmat(res, shmid, shmaddr, shmflg) \
1341 __sanitizer_syscall_post_impl_shmat(res, (long)(shmid), (long)(shmaddr), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001342 (long)(shmflg))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001343#define __sanitizer_syscall_pre_shmget(key, size, flag) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001344 __sanitizer_syscall_pre_impl_shmget((long)(key), (long)(size), (long)(flag))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001345#define __sanitizer_syscall_post_shmget(res, key, size, flag) \
1346 __sanitizer_syscall_post_impl_shmget(res, (long)(key), (long)(size), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001347 (long)(flag))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001348#define __sanitizer_syscall_pre_shmdt(shmaddr) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001349 __sanitizer_syscall_pre_impl_shmdt((long)(shmaddr))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001350#define __sanitizer_syscall_post_shmdt(res, shmaddr) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001351 __sanitizer_syscall_post_impl_shmdt(res, (long)(shmaddr))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001352#define __sanitizer_syscall_pre_shmctl(shmid, cmd, buf) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001353 __sanitizer_syscall_pre_impl_shmctl((long)(shmid), (long)(cmd), (long)(buf))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001354#define __sanitizer_syscall_post_shmctl(res, shmid, cmd, buf) \
1355 __sanitizer_syscall_post_impl_shmctl(res, (long)(shmid), (long)(cmd), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001356 (long)(buf))
1357#define __sanitizer_syscall_pre_ipc(call, first, second, third, ptr, fifth) \
1358 __sanitizer_syscall_pre_impl_ipc((long)(call), (long)(first), \
1359 (long)(second), (long)(third), (long)(ptr), \
1360 (long)(fifth))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001361#define __sanitizer_syscall_post_ipc(res, call, first, second, third, ptr, \
1362 fifth) \
1363 __sanitizer_syscall_post_impl_ipc(res, (long)(call), (long)(first), \
1364 (long)(second), (long)(third), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001365 (long)(ptr), (long)(fifth))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001366#define __sanitizer_syscall_pre_mq_open(name, oflag, mode, attr) \
1367 __sanitizer_syscall_pre_impl_mq_open((long)(name), (long)(oflag), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001368 (long)(mode), (long)(attr))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001369#define __sanitizer_syscall_post_mq_open(res, name, oflag, mode, attr) \
1370 __sanitizer_syscall_post_impl_mq_open(res, (long)(name), (long)(oflag), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001371 (long)(mode), (long)(attr))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001372#define __sanitizer_syscall_pre_mq_unlink(name) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001373 __sanitizer_syscall_pre_impl_mq_unlink((long)(name))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001374#define __sanitizer_syscall_post_mq_unlink(res, name) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001375 __sanitizer_syscall_post_impl_mq_unlink(res, (long)(name))
1376#define __sanitizer_syscall_pre_mq_timedsend(mqdes, msg_ptr, msg_len, \
1377 msg_prio, abs_timeout) \
1378 __sanitizer_syscall_pre_impl_mq_timedsend((long)(mqdes), (long)(msg_ptr), \
1379 (long)(msg_len), (long)(msg_prio), \
1380 (long)(abs_timeout))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001381#define __sanitizer_syscall_post_mq_timedsend(res, mqdes, msg_ptr, msg_len, \
1382 msg_prio, abs_timeout) \
1383 __sanitizer_syscall_post_impl_mq_timedsend( \
1384 res, (long)(mqdes), (long)(msg_ptr), (long)(msg_len), (long)(msg_prio), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001385 (long)(abs_timeout))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001386#define __sanitizer_syscall_pre_mq_timedreceive(mqdes, msg_ptr, msg_len, \
1387 msg_prio, abs_timeout) \
1388 __sanitizer_syscall_pre_impl_mq_timedreceive( \
1389 (long)(mqdes), (long)(msg_ptr), (long)(msg_len), (long)(msg_prio), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001390 (long)(abs_timeout))
1391#define __sanitizer_syscall_post_mq_timedreceive(res, mqdes, msg_ptr, msg_len, \
1392 msg_prio, abs_timeout) \
1393 __sanitizer_syscall_post_impl_mq_timedreceive( \
1394 res, (long)(mqdes), (long)(msg_ptr), (long)(msg_len), (long)(msg_prio), \
1395 (long)(abs_timeout))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001396#define __sanitizer_syscall_pre_mq_notify(mqdes, notification) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001397 __sanitizer_syscall_pre_impl_mq_notify((long)(mqdes), (long)(notification))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001398#define __sanitizer_syscall_post_mq_notify(res, mqdes, notification) \
1399 __sanitizer_syscall_post_impl_mq_notify(res, (long)(mqdes), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001400 (long)(notification))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001401#define __sanitizer_syscall_pre_mq_getsetattr(mqdes, mqstat, omqstat) \
1402 __sanitizer_syscall_pre_impl_mq_getsetattr((long)(mqdes), (long)(mqstat), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001403 (long)(omqstat))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001404#define __sanitizer_syscall_post_mq_getsetattr(res, mqdes, mqstat, omqstat) \
1405 __sanitizer_syscall_post_impl_mq_getsetattr(res, (long)(mqdes), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001406 (long)(mqstat), (long)(omqstat))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001407#define __sanitizer_syscall_pre_pciconfig_iobase(which, bus, devfn) \
1408 __sanitizer_syscall_pre_impl_pciconfig_iobase((long)(which), (long)(bus), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001409 (long)(devfn))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001410#define __sanitizer_syscall_post_pciconfig_iobase(res, which, bus, devfn) \
1411 __sanitizer_syscall_post_impl_pciconfig_iobase(res, (long)(which), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001412 (long)(bus), (long)(devfn))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001413#define __sanitizer_syscall_pre_pciconfig_read(bus, dfn, off, len, buf) \
1414 __sanitizer_syscall_pre_impl_pciconfig_read( \
Logan Chien55afb0a2018-10-15 10:42:14 +08001415 (long)(bus), (long)(dfn), (long)(off), (long)(len), (long)(buf))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001416#define __sanitizer_syscall_post_pciconfig_read(res, bus, dfn, off, len, buf) \
1417 __sanitizer_syscall_post_impl_pciconfig_read( \
Logan Chien55afb0a2018-10-15 10:42:14 +08001418 res, (long)(bus), (long)(dfn), (long)(off), (long)(len), (long)(buf))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001419#define __sanitizer_syscall_pre_pciconfig_write(bus, dfn, off, len, buf) \
1420 __sanitizer_syscall_pre_impl_pciconfig_write( \
Logan Chien55afb0a2018-10-15 10:42:14 +08001421 (long)(bus), (long)(dfn), (long)(off), (long)(len), (long)(buf))
1422#define __sanitizer_syscall_post_pciconfig_write(res, bus, dfn, off, len, buf) \
1423 __sanitizer_syscall_post_impl_pciconfig_write( \
1424 res, (long)(bus), (long)(dfn), (long)(off), (long)(len), (long)(buf))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001425#define __sanitizer_syscall_pre_swapon(specialfile, swap_flags) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001426 __sanitizer_syscall_pre_impl_swapon((long)(specialfile), (long)(swap_flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001427#define __sanitizer_syscall_post_swapon(res, specialfile, swap_flags) \
1428 __sanitizer_syscall_post_impl_swapon(res, (long)(specialfile), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001429 (long)(swap_flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001430#define __sanitizer_syscall_pre_swapoff(specialfile) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001431 __sanitizer_syscall_pre_impl_swapoff((long)(specialfile))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001432#define __sanitizer_syscall_post_swapoff(res, specialfile) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001433 __sanitizer_syscall_post_impl_swapoff(res, (long)(specialfile))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001434#define __sanitizer_syscall_pre_sysctl(args) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001435 __sanitizer_syscall_pre_impl_sysctl((long)(args))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001436#define __sanitizer_syscall_post_sysctl(res, args) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001437 __sanitizer_syscall_post_impl_sysctl(res, (long)(args))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001438#define __sanitizer_syscall_pre_sysinfo(info) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001439 __sanitizer_syscall_pre_impl_sysinfo((long)(info))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001440#define __sanitizer_syscall_post_sysinfo(res, info) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001441 __sanitizer_syscall_post_impl_sysinfo(res, (long)(info))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001442#define __sanitizer_syscall_pre_sysfs(option, arg1, arg2) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001443 __sanitizer_syscall_pre_impl_sysfs((long)(option), (long)(arg1), (long)(arg2))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001444#define __sanitizer_syscall_post_sysfs(res, option, arg1, arg2) \
1445 __sanitizer_syscall_post_impl_sysfs(res, (long)(option), (long)(arg1), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001446 (long)(arg2))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001447#define __sanitizer_syscall_pre_syslog(type, buf, len) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001448 __sanitizer_syscall_pre_impl_syslog((long)(type), (long)(buf), (long)(len))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001449#define __sanitizer_syscall_post_syslog(res, type, buf, len) \
1450 __sanitizer_syscall_post_impl_syslog(res, (long)(type), (long)(buf), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001451 (long)(len))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001452#define __sanitizer_syscall_pre_uselib(library) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001453 __sanitizer_syscall_pre_impl_uselib((long)(library))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001454#define __sanitizer_syscall_post_uselib(res, library) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001455 __sanitizer_syscall_post_impl_uselib(res, (long)(library))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001456#define __sanitizer_syscall_pre_ni_syscall() \
Logan Chien55afb0a2018-10-15 10:42:14 +08001457 __sanitizer_syscall_pre_impl_ni_syscall()
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001458#define __sanitizer_syscall_post_ni_syscall(res) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001459 __sanitizer_syscall_post_impl_ni_syscall(res)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001460#define __sanitizer_syscall_pre_ptrace(request, pid, addr, data) \
1461 __sanitizer_syscall_pre_impl_ptrace((long)(request), (long)(pid), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001462 (long)(addr), (long)(data))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001463#define __sanitizer_syscall_post_ptrace(res, request, pid, addr, data) \
1464 __sanitizer_syscall_post_impl_ptrace(res, (long)(request), (long)(pid), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001465 (long)(addr), (long)(data))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001466#define __sanitizer_syscall_pre_add_key(_type, _description, _payload, plen, \
1467 destringid) \
1468 __sanitizer_syscall_pre_impl_add_key((long)(_type), (long)(_description), \
1469 (long)(_payload), (long)(plen), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001470 (long)(destringid))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001471#define __sanitizer_syscall_post_add_key(res, _type, _description, _payload, \
1472 plen, destringid) \
1473 __sanitizer_syscall_post_impl_add_key( \
1474 res, (long)(_type), (long)(_description), (long)(_payload), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001475 (long)(plen), (long)(destringid))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001476#define __sanitizer_syscall_pre_request_key(_type, _description, \
1477 _callout_info, destringid) \
1478 __sanitizer_syscall_pre_impl_request_key( \
1479 (long)(_type), (long)(_description), (long)(_callout_info), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001480 (long)(destringid))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001481#define __sanitizer_syscall_post_request_key(res, _type, _description, \
1482 _callout_info, destringid) \
1483 __sanitizer_syscall_post_impl_request_key( \
1484 res, (long)(_type), (long)(_description), (long)(_callout_info), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001485 (long)(destringid))
1486#define __sanitizer_syscall_pre_keyctl(cmd, arg2, arg3, arg4, arg5) \
1487 __sanitizer_syscall_pre_impl_keyctl((long)(cmd), (long)(arg2), (long)(arg3), \
1488 (long)(arg4), (long)(arg5))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001489#define __sanitizer_syscall_post_keyctl(res, cmd, arg2, arg3, arg4, arg5) \
1490 __sanitizer_syscall_post_impl_keyctl(res, (long)(cmd), (long)(arg2), \
1491 (long)(arg3), (long)(arg4), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001492 (long)(arg5))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001493#define __sanitizer_syscall_pre_ioprio_set(which, who, ioprio) \
1494 __sanitizer_syscall_pre_impl_ioprio_set((long)(which), (long)(who), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001495 (long)(ioprio))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001496#define __sanitizer_syscall_post_ioprio_set(res, which, who, ioprio) \
1497 __sanitizer_syscall_post_impl_ioprio_set(res, (long)(which), (long)(who), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001498 (long)(ioprio))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001499#define __sanitizer_syscall_pre_ioprio_get(which, who) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001500 __sanitizer_syscall_pre_impl_ioprio_get((long)(which), (long)(who))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001501#define __sanitizer_syscall_post_ioprio_get(res, which, who) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001502 __sanitizer_syscall_post_impl_ioprio_get(res, (long)(which), (long)(who))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001503#define __sanitizer_syscall_pre_set_mempolicy(mode, nmask, maxnode) \
1504 __sanitizer_syscall_pre_impl_set_mempolicy((long)(mode), (long)(nmask), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001505 (long)(maxnode))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001506#define __sanitizer_syscall_post_set_mempolicy(res, mode, nmask, maxnode) \
1507 __sanitizer_syscall_post_impl_set_mempolicy(res, (long)(mode), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001508 (long)(nmask), (long)(maxnode))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001509#define __sanitizer_syscall_pre_migrate_pages(pid, maxnode, from, to) \
1510 __sanitizer_syscall_pre_impl_migrate_pages((long)(pid), (long)(maxnode), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001511 (long)(from), (long)(to))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001512#define __sanitizer_syscall_post_migrate_pages(res, pid, maxnode, from, to) \
1513 __sanitizer_syscall_post_impl_migrate_pages( \
Logan Chien55afb0a2018-10-15 10:42:14 +08001514 res, (long)(pid), (long)(maxnode), (long)(from), (long)(to))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001515#define __sanitizer_syscall_pre_move_pages(pid, nr_pages, pages, nodes, \
1516 status, flags) \
1517 __sanitizer_syscall_pre_impl_move_pages((long)(pid), (long)(nr_pages), \
1518 (long)(pages), (long)(nodes), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001519 (long)(status), (long)(flags))
1520#define __sanitizer_syscall_post_move_pages(res, pid, nr_pages, pages, nodes, \
1521 status, flags) \
1522 __sanitizer_syscall_post_impl_move_pages(res, (long)(pid), (long)(nr_pages), \
1523 (long)(pages), (long)(nodes), \
1524 (long)(status), (long)(flags))
1525#define __sanitizer_syscall_pre_mbind(start, len, mode, nmask, maxnode, flags) \
1526 __sanitizer_syscall_pre_impl_mbind((long)(start), (long)(len), (long)(mode), \
1527 (long)(nmask), (long)(maxnode), \
1528 (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001529#define __sanitizer_syscall_post_mbind(res, start, len, mode, nmask, maxnode, \
1530 flags) \
1531 __sanitizer_syscall_post_impl_mbind(res, (long)(start), (long)(len), \
1532 (long)(mode), (long)(nmask), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001533 (long)(maxnode), (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001534#define __sanitizer_syscall_pre_get_mempolicy(policy, nmask, maxnode, addr, \
1535 flags) \
1536 __sanitizer_syscall_pre_impl_get_mempolicy((long)(policy), (long)(nmask), \
1537 (long)(maxnode), (long)(addr), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001538 (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001539#define __sanitizer_syscall_post_get_mempolicy(res, policy, nmask, maxnode, \
1540 addr, flags) \
1541 __sanitizer_syscall_post_impl_get_mempolicy(res, (long)(policy), \
1542 (long)(nmask), (long)(maxnode), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001543 (long)(addr), (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001544#define __sanitizer_syscall_pre_inotify_init() \
Logan Chien55afb0a2018-10-15 10:42:14 +08001545 __sanitizer_syscall_pre_impl_inotify_init()
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001546#define __sanitizer_syscall_post_inotify_init(res) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001547 __sanitizer_syscall_post_impl_inotify_init(res)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001548#define __sanitizer_syscall_pre_inotify_init1(flags) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001549 __sanitizer_syscall_pre_impl_inotify_init1((long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001550#define __sanitizer_syscall_post_inotify_init1(res, flags) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001551 __sanitizer_syscall_post_impl_inotify_init1(res, (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001552#define __sanitizer_syscall_pre_inotify_add_watch(fd, path, mask) \
1553 __sanitizer_syscall_pre_impl_inotify_add_watch((long)(fd), (long)(path), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001554 (long)(mask))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001555#define __sanitizer_syscall_post_inotify_add_watch(res, fd, path, mask) \
1556 __sanitizer_syscall_post_impl_inotify_add_watch(res, (long)(fd), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001557 (long)(path), (long)(mask))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001558#define __sanitizer_syscall_pre_inotify_rm_watch(fd, wd) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001559 __sanitizer_syscall_pre_impl_inotify_rm_watch((long)(fd), (long)(wd))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001560#define __sanitizer_syscall_post_inotify_rm_watch(res, fd, wd) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001561 __sanitizer_syscall_post_impl_inotify_rm_watch(res, (long)(fd), (long)(wd))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001562#define __sanitizer_syscall_pre_spu_run(fd, unpc, ustatus) \
1563 __sanitizer_syscall_pre_impl_spu_run((long)(fd), (long)(unpc), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001564 (long)(ustatus))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001565#define __sanitizer_syscall_post_spu_run(res, fd, unpc, ustatus) \
1566 __sanitizer_syscall_post_impl_spu_run(res, (long)(fd), (long)(unpc), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001567 (long)(ustatus))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001568#define __sanitizer_syscall_pre_spu_create(name, flags, mode, fd) \
1569 __sanitizer_syscall_pre_impl_spu_create((long)(name), (long)(flags), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001570 (long)(mode), (long)(fd))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001571#define __sanitizer_syscall_post_spu_create(res, name, flags, mode, fd) \
1572 __sanitizer_syscall_post_impl_spu_create(res, (long)(name), (long)(flags), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001573 (long)(mode), (long)(fd))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001574#define __sanitizer_syscall_pre_mknodat(dfd, filename, mode, dev) \
1575 __sanitizer_syscall_pre_impl_mknodat((long)(dfd), (long)(filename), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001576 (long)(mode), (long)(dev))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001577#define __sanitizer_syscall_post_mknodat(res, dfd, filename, mode, dev) \
1578 __sanitizer_syscall_post_impl_mknodat(res, (long)(dfd), (long)(filename), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001579 (long)(mode), (long)(dev))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001580#define __sanitizer_syscall_pre_mkdirat(dfd, pathname, mode) \
1581 __sanitizer_syscall_pre_impl_mkdirat((long)(dfd), (long)(pathname), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001582 (long)(mode))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001583#define __sanitizer_syscall_post_mkdirat(res, dfd, pathname, mode) \
1584 __sanitizer_syscall_post_impl_mkdirat(res, (long)(dfd), (long)(pathname), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001585 (long)(mode))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001586#define __sanitizer_syscall_pre_unlinkat(dfd, pathname, flag) \
1587 __sanitizer_syscall_pre_impl_unlinkat((long)(dfd), (long)(pathname), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001588 (long)(flag))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001589#define __sanitizer_syscall_post_unlinkat(res, dfd, pathname, flag) \
1590 __sanitizer_syscall_post_impl_unlinkat(res, (long)(dfd), (long)(pathname), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001591 (long)(flag))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001592#define __sanitizer_syscall_pre_symlinkat(oldname, newdfd, newname) \
1593 __sanitizer_syscall_pre_impl_symlinkat((long)(oldname), (long)(newdfd), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001594 (long)(newname))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001595#define __sanitizer_syscall_post_symlinkat(res, oldname, newdfd, newname) \
1596 __sanitizer_syscall_post_impl_symlinkat(res, (long)(oldname), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001597 (long)(newdfd), (long)(newname))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001598#define __sanitizer_syscall_pre_linkat(olddfd, oldname, newdfd, newname, \
1599 flags) \
1600 __sanitizer_syscall_pre_impl_linkat((long)(olddfd), (long)(oldname), \
1601 (long)(newdfd), (long)(newname), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001602 (long)(flags))
1603#define __sanitizer_syscall_post_linkat(res, olddfd, oldname, newdfd, newname, \
1604 flags) \
1605 __sanitizer_syscall_post_impl_linkat(res, (long)(olddfd), (long)(oldname), \
1606 (long)(newdfd), (long)(newname), \
1607 (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001608#define __sanitizer_syscall_pre_renameat(olddfd, oldname, newdfd, newname) \
1609 __sanitizer_syscall_pre_impl_renameat((long)(olddfd), (long)(oldname), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001610 (long)(newdfd), (long)(newname))
1611#define __sanitizer_syscall_post_renameat(res, olddfd, oldname, newdfd, \
1612 newname) \
1613 __sanitizer_syscall_post_impl_renameat(res, (long)(olddfd), (long)(oldname), \
1614 (long)(newdfd), (long)(newname))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001615#define __sanitizer_syscall_pre_futimesat(dfd, filename, utimes) \
1616 __sanitizer_syscall_pre_impl_futimesat((long)(dfd), (long)(filename), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001617 (long)(utimes))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001618#define __sanitizer_syscall_post_futimesat(res, dfd, filename, utimes) \
1619 __sanitizer_syscall_post_impl_futimesat(res, (long)(dfd), (long)(filename), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001620 (long)(utimes))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001621#define __sanitizer_syscall_pre_faccessat(dfd, filename, mode) \
1622 __sanitizer_syscall_pre_impl_faccessat((long)(dfd), (long)(filename), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001623 (long)(mode))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001624#define __sanitizer_syscall_post_faccessat(res, dfd, filename, mode) \
1625 __sanitizer_syscall_post_impl_faccessat(res, (long)(dfd), (long)(filename), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001626 (long)(mode))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001627#define __sanitizer_syscall_pre_fchmodat(dfd, filename, mode) \
1628 __sanitizer_syscall_pre_impl_fchmodat((long)(dfd), (long)(filename), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001629 (long)(mode))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001630#define __sanitizer_syscall_post_fchmodat(res, dfd, filename, mode) \
1631 __sanitizer_syscall_post_impl_fchmodat(res, (long)(dfd), (long)(filename), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001632 (long)(mode))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001633#define __sanitizer_syscall_pre_fchownat(dfd, filename, user, group, flag) \
1634 __sanitizer_syscall_pre_impl_fchownat((long)(dfd), (long)(filename), \
1635 (long)(user), (long)(group), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001636 (long)(flag))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001637#define __sanitizer_syscall_post_fchownat(res, dfd, filename, user, group, \
1638 flag) \
1639 __sanitizer_syscall_post_impl_fchownat(res, (long)(dfd), (long)(filename), \
1640 (long)(user), (long)(group), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001641 (long)(flag))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001642#define __sanitizer_syscall_pre_openat(dfd, filename, flags, mode) \
1643 __sanitizer_syscall_pre_impl_openat((long)(dfd), (long)(filename), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001644 (long)(flags), (long)(mode))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001645#define __sanitizer_syscall_post_openat(res, dfd, filename, flags, mode) \
1646 __sanitizer_syscall_post_impl_openat(res, (long)(dfd), (long)(filename), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001647 (long)(flags), (long)(mode))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001648#define __sanitizer_syscall_pre_newfstatat(dfd, filename, statbuf, flag) \
1649 __sanitizer_syscall_pre_impl_newfstatat((long)(dfd), (long)(filename), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001650 (long)(statbuf), (long)(flag))
1651#define __sanitizer_syscall_post_newfstatat(res, dfd, filename, statbuf, flag) \
1652 __sanitizer_syscall_post_impl_newfstatat(res, (long)(dfd), (long)(filename), \
1653 (long)(statbuf), (long)(flag))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001654#define __sanitizer_syscall_pre_fstatat64(dfd, filename, statbuf, flag) \
1655 __sanitizer_syscall_pre_impl_fstatat64((long)(dfd), (long)(filename), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001656 (long)(statbuf), (long)(flag))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001657#define __sanitizer_syscall_post_fstatat64(res, dfd, filename, statbuf, flag) \
1658 __sanitizer_syscall_post_impl_fstatat64(res, (long)(dfd), (long)(filename), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001659 (long)(statbuf), (long)(flag))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001660#define __sanitizer_syscall_pre_readlinkat(dfd, path, buf, bufsiz) \
1661 __sanitizer_syscall_pre_impl_readlinkat((long)(dfd), (long)(path), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001662 (long)(buf), (long)(bufsiz))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001663#define __sanitizer_syscall_post_readlinkat(res, dfd, path, buf, bufsiz) \
1664 __sanitizer_syscall_post_impl_readlinkat(res, (long)(dfd), (long)(path), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001665 (long)(buf), (long)(bufsiz))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001666#define __sanitizer_syscall_pre_utimensat(dfd, filename, utimes, flags) \
1667 __sanitizer_syscall_pre_impl_utimensat((long)(dfd), (long)(filename), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001668 (long)(utimes), (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001669#define __sanitizer_syscall_post_utimensat(res, dfd, filename, utimes, flags) \
1670 __sanitizer_syscall_post_impl_utimensat(res, (long)(dfd), (long)(filename), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001671 (long)(utimes), (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001672#define __sanitizer_syscall_pre_unshare(unshare_flags) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001673 __sanitizer_syscall_pre_impl_unshare((long)(unshare_flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001674#define __sanitizer_syscall_post_unshare(res, unshare_flags) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001675 __sanitizer_syscall_post_impl_unshare(res, (long)(unshare_flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001676#define __sanitizer_syscall_pre_splice(fd_in, off_in, fd_out, off_out, len, \
1677 flags) \
1678 __sanitizer_syscall_pre_impl_splice((long)(fd_in), (long)(off_in), \
1679 (long)(fd_out), (long)(off_out), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001680 (long)(len), (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001681#define __sanitizer_syscall_post_splice(res, fd_in, off_in, fd_out, off_out, \
1682 len, flags) \
1683 __sanitizer_syscall_post_impl_splice(res, (long)(fd_in), (long)(off_in), \
1684 (long)(fd_out), (long)(off_out), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001685 (long)(len), (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001686#define __sanitizer_syscall_pre_vmsplice(fd, iov, nr_segs, flags) \
1687 __sanitizer_syscall_pre_impl_vmsplice((long)(fd), (long)(iov), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001688 (long)(nr_segs), (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001689#define __sanitizer_syscall_post_vmsplice(res, fd, iov, nr_segs, flags) \
1690 __sanitizer_syscall_post_impl_vmsplice(res, (long)(fd), (long)(iov), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001691 (long)(nr_segs), (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001692#define __sanitizer_syscall_pre_tee(fdin, fdout, len, flags) \
1693 __sanitizer_syscall_pre_impl_tee((long)(fdin), (long)(fdout), (long)(len), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001694 (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001695#define __sanitizer_syscall_post_tee(res, fdin, fdout, len, flags) \
1696 __sanitizer_syscall_post_impl_tee(res, (long)(fdin), (long)(fdout), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001697 (long)(len), (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001698#define __sanitizer_syscall_pre_get_robust_list(pid, head_ptr, len_ptr) \
1699 __sanitizer_syscall_pre_impl_get_robust_list((long)(pid), (long)(head_ptr), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001700 (long)(len_ptr))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001701#define __sanitizer_syscall_post_get_robust_list(res, pid, head_ptr, len_ptr) \
1702 __sanitizer_syscall_post_impl_get_robust_list( \
Logan Chien55afb0a2018-10-15 10:42:14 +08001703 res, (long)(pid), (long)(head_ptr), (long)(len_ptr))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001704#define __sanitizer_syscall_pre_set_robust_list(head, len) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001705 __sanitizer_syscall_pre_impl_set_robust_list((long)(head), (long)(len))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001706#define __sanitizer_syscall_post_set_robust_list(res, head, len) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001707 __sanitizer_syscall_post_impl_set_robust_list(res, (long)(head), (long)(len))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001708#define __sanitizer_syscall_pre_getcpu(cpu, node, cache) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001709 __sanitizer_syscall_pre_impl_getcpu((long)(cpu), (long)(node), (long)(cache))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001710#define __sanitizer_syscall_post_getcpu(res, cpu, node, cache) \
1711 __sanitizer_syscall_post_impl_getcpu(res, (long)(cpu), (long)(node), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001712 (long)(cache))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001713#define __sanitizer_syscall_pre_signalfd(ufd, user_mask, sizemask) \
1714 __sanitizer_syscall_pre_impl_signalfd((long)(ufd), (long)(user_mask), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001715 (long)(sizemask))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001716#define __sanitizer_syscall_post_signalfd(res, ufd, user_mask, sizemask) \
1717 __sanitizer_syscall_post_impl_signalfd(res, (long)(ufd), (long)(user_mask), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001718 (long)(sizemask))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001719#define __sanitizer_syscall_pre_signalfd4(ufd, user_mask, sizemask, flags) \
1720 __sanitizer_syscall_pre_impl_signalfd4((long)(ufd), (long)(user_mask), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001721 (long)(sizemask), (long)(flags))
1722#define __sanitizer_syscall_post_signalfd4(res, ufd, user_mask, sizemask, \
1723 flags) \
1724 __sanitizer_syscall_post_impl_signalfd4(res, (long)(ufd), (long)(user_mask), \
1725 (long)(sizemask), (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001726#define __sanitizer_syscall_pre_timerfd_create(clockid, flags) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001727 __sanitizer_syscall_pre_impl_timerfd_create((long)(clockid), (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001728#define __sanitizer_syscall_post_timerfd_create(res, clockid, flags) \
1729 __sanitizer_syscall_post_impl_timerfd_create(res, (long)(clockid), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001730 (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001731#define __sanitizer_syscall_pre_timerfd_settime(ufd, flags, utmr, otmr) \
1732 __sanitizer_syscall_pre_impl_timerfd_settime((long)(ufd), (long)(flags), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001733 (long)(utmr), (long)(otmr))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001734#define __sanitizer_syscall_post_timerfd_settime(res, ufd, flags, utmr, otmr) \
1735 __sanitizer_syscall_post_impl_timerfd_settime( \
Logan Chien55afb0a2018-10-15 10:42:14 +08001736 res, (long)(ufd), (long)(flags), (long)(utmr), (long)(otmr))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001737#define __sanitizer_syscall_pre_timerfd_gettime(ufd, otmr) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001738 __sanitizer_syscall_pre_impl_timerfd_gettime((long)(ufd), (long)(otmr))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001739#define __sanitizer_syscall_post_timerfd_gettime(res, ufd, otmr) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001740 __sanitizer_syscall_post_impl_timerfd_gettime(res, (long)(ufd), (long)(otmr))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001741#define __sanitizer_syscall_pre_eventfd(count) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001742 __sanitizer_syscall_pre_impl_eventfd((long)(count))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001743#define __sanitizer_syscall_post_eventfd(res, count) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001744 __sanitizer_syscall_post_impl_eventfd(res, (long)(count))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001745#define __sanitizer_syscall_pre_eventfd2(count, flags) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001746 __sanitizer_syscall_pre_impl_eventfd2((long)(count), (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001747#define __sanitizer_syscall_post_eventfd2(res, count, flags) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001748 __sanitizer_syscall_post_impl_eventfd2(res, (long)(count), (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001749#define __sanitizer_syscall_pre_old_readdir(arg0, arg1, arg2) \
1750 __sanitizer_syscall_pre_impl_old_readdir((long)(arg0), (long)(arg1), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001751 (long)(arg2))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001752#define __sanitizer_syscall_post_old_readdir(res, arg0, arg1, arg2) \
1753 __sanitizer_syscall_post_impl_old_readdir(res, (long)(arg0), (long)(arg1), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001754 (long)(arg2))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001755#define __sanitizer_syscall_pre_pselect6(arg0, arg1, arg2, arg3, arg4, arg5) \
1756 __sanitizer_syscall_pre_impl_pselect6((long)(arg0), (long)(arg1), \
1757 (long)(arg2), (long)(arg3), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001758 (long)(arg4), (long)(arg5))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001759#define __sanitizer_syscall_post_pselect6(res, arg0, arg1, arg2, arg3, arg4, \
1760 arg5) \
1761 __sanitizer_syscall_post_impl_pselect6(res, (long)(arg0), (long)(arg1), \
1762 (long)(arg2), (long)(arg3), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001763 (long)(arg4), (long)(arg5))
1764#define __sanitizer_syscall_pre_ppoll(arg0, arg1, arg2, arg3, arg4) \
1765 __sanitizer_syscall_pre_impl_ppoll((long)(arg0), (long)(arg1), (long)(arg2), \
1766 (long)(arg3), (long)(arg4))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001767#define __sanitizer_syscall_post_ppoll(res, arg0, arg1, arg2, arg3, arg4) \
1768 __sanitizer_syscall_post_impl_ppoll(res, (long)(arg0), (long)(arg1), \
1769 (long)(arg2), (long)(arg3), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001770 (long)(arg4))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001771#define __sanitizer_syscall_pre_syncfs(fd) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001772 __sanitizer_syscall_pre_impl_syncfs((long)(fd))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001773#define __sanitizer_syscall_post_syncfs(res, fd) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001774 __sanitizer_syscall_post_impl_syncfs(res, (long)(fd))
1775#define __sanitizer_syscall_pre_perf_event_open(attr_uptr, pid, cpu, group_fd, \
1776 flags) \
1777 __sanitizer_syscall_pre_impl_perf_event_open((long)(attr_uptr), (long)(pid), \
1778 (long)(cpu), (long)(group_fd), \
1779 (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001780#define __sanitizer_syscall_post_perf_event_open(res, attr_uptr, pid, cpu, \
1781 group_fd, flags) \
1782 __sanitizer_syscall_post_impl_perf_event_open( \
1783 res, (long)(attr_uptr), (long)(pid), (long)(cpu), (long)(group_fd), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001784 (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001785#define __sanitizer_syscall_pre_mmap_pgoff(addr, len, prot, flags, fd, pgoff) \
1786 __sanitizer_syscall_pre_impl_mmap_pgoff((long)(addr), (long)(len), \
1787 (long)(prot), (long)(flags), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001788 (long)(fd), (long)(pgoff))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001789#define __sanitizer_syscall_post_mmap_pgoff(res, addr, len, prot, flags, fd, \
1790 pgoff) \
1791 __sanitizer_syscall_post_impl_mmap_pgoff(res, (long)(addr), (long)(len), \
1792 (long)(prot), (long)(flags), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001793 (long)(fd), (long)(pgoff))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001794#define __sanitizer_syscall_pre_old_mmap(arg) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001795 __sanitizer_syscall_pre_impl_old_mmap((long)(arg))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001796#define __sanitizer_syscall_post_old_mmap(res, arg) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001797 __sanitizer_syscall_post_impl_old_mmap(res, (long)(arg))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001798#define __sanitizer_syscall_pre_name_to_handle_at(dfd, name, handle, mnt_id, \
1799 flag) \
1800 __sanitizer_syscall_pre_impl_name_to_handle_at( \
Logan Chien55afb0a2018-10-15 10:42:14 +08001801 (long)(dfd), (long)(name), (long)(handle), (long)(mnt_id), (long)(flag))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001802#define __sanitizer_syscall_post_name_to_handle_at(res, dfd, name, handle, \
1803 mnt_id, flag) \
1804 __sanitizer_syscall_post_impl_name_to_handle_at( \
1805 res, (long)(dfd), (long)(name), (long)(handle), (long)(mnt_id), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001806 (long)(flag))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001807#define __sanitizer_syscall_pre_open_by_handle_at(mountdirfd, handle, flags) \
1808 __sanitizer_syscall_pre_impl_open_by_handle_at( \
Logan Chien55afb0a2018-10-15 10:42:14 +08001809 (long)(mountdirfd), (long)(handle), (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001810#define __sanitizer_syscall_post_open_by_handle_at(res, mountdirfd, handle, \
1811 flags) \
1812 __sanitizer_syscall_post_impl_open_by_handle_at( \
Logan Chien55afb0a2018-10-15 10:42:14 +08001813 res, (long)(mountdirfd), (long)(handle), (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001814#define __sanitizer_syscall_pre_setns(fd, nstype) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001815 __sanitizer_syscall_pre_impl_setns((long)(fd), (long)(nstype))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001816#define __sanitizer_syscall_post_setns(res, fd, nstype) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001817 __sanitizer_syscall_post_impl_setns(res, (long)(fd), (long)(nstype))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001818#define __sanitizer_syscall_pre_process_vm_readv(pid, lvec, liovcnt, rvec, \
1819 riovcnt, flags) \
1820 __sanitizer_syscall_pre_impl_process_vm_readv( \
1821 (long)(pid), (long)(lvec), (long)(liovcnt), (long)(rvec), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001822 (long)(riovcnt), (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001823#define __sanitizer_syscall_post_process_vm_readv(res, pid, lvec, liovcnt, \
1824 rvec, riovcnt, flags) \
1825 __sanitizer_syscall_post_impl_process_vm_readv( \
1826 res, (long)(pid), (long)(lvec), (long)(liovcnt), (long)(rvec), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001827 (long)(riovcnt), (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001828#define __sanitizer_syscall_pre_process_vm_writev(pid, lvec, liovcnt, rvec, \
1829 riovcnt, flags) \
1830 __sanitizer_syscall_pre_impl_process_vm_writev( \
1831 (long)(pid), (long)(lvec), (long)(liovcnt), (long)(rvec), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001832 (long)(riovcnt), (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001833#define __sanitizer_syscall_post_process_vm_writev(res, pid, lvec, liovcnt, \
1834 rvec, riovcnt, flags) \
1835 __sanitizer_syscall_post_impl_process_vm_writev( \
1836 res, (long)(pid), (long)(lvec), (long)(liovcnt), (long)(rvec), \
Logan Chien55afb0a2018-10-15 10:42:14 +08001837 (long)(riovcnt), (long)(flags))
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001838#define __sanitizer_syscall_pre_fork() __sanitizer_syscall_pre_impl_fork()
1839#define __sanitizer_syscall_post_fork(res) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001840 __sanitizer_syscall_post_impl_fork(res)
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08001841#define __sanitizer_syscall_pre_vfork() __sanitizer_syscall_pre_impl_vfork()
1842#define __sanitizer_syscall_post_vfork(res) \
Logan Chien55afb0a2018-10-15 10:42:14 +08001843 __sanitizer_syscall_post_impl_vfork(res)
1844#define __sanitizer_syscall_pre_sigaction(signum, act, oldact) \
1845 __sanitizer_syscall_pre_impl_sigaction((long)signum, (long)act, (long)oldact)
1846#define __sanitizer_syscall_post_sigaction(res, signum, act, oldact) \
1847 __sanitizer_syscall_post_impl_sigaction(res, (long)signum, (long)act, \
1848 (long)oldact)
1849#define __sanitizer_syscall_pre_rt_sigaction(signum, act, oldact, sz) \
1850 __sanitizer_syscall_pre_impl_rt_sigaction((long)signum, (long)act, \
1851 (long)oldact, (long)sz)
1852#define __sanitizer_syscall_post_rt_sigaction(res, signum, act, oldact, sz) \
1853 __sanitizer_syscall_post_impl_rt_sigaction(res, (long)signum, (long)act, \
1854 (long)oldact, (long)sz)
Sasha Smundak33d5ddd2020-05-04 13:37:26 -07001855#define __sanitizer_syscall_pre_sigaltstack(ss, oss) \
1856 __sanitizer_syscall_pre_impl_sigaltstack((long)ss, (long)oss)
1857#define __sanitizer_syscall_post_sigaltstack(res, ss, oss) \
1858 __sanitizer_syscall_post_impl_sigaltstack(res, (long)ss, (long)oss)
Logan Chien55afb0a2018-10-15 10:42:14 +08001859
1860// And now a few syscalls we don't handle yet.
1861#define __sanitizer_syscall_pre_afs_syscall(...)
1862#define __sanitizer_syscall_pre_arch_prctl(...)
1863#define __sanitizer_syscall_pre_break(...)
1864#define __sanitizer_syscall_pre_chown32(...)
1865#define __sanitizer_syscall_pre_clone(...)
1866#define __sanitizer_syscall_pre_create_module(...)
1867#define __sanitizer_syscall_pre_epoll_ctl_old(...)
1868#define __sanitizer_syscall_pre_epoll_wait_old(...)
1869#define __sanitizer_syscall_pre_execve(...)
1870#define __sanitizer_syscall_pre_fadvise64(...)
1871#define __sanitizer_syscall_pre_fadvise64_64(...)
1872#define __sanitizer_syscall_pre_fallocate(...)
1873#define __sanitizer_syscall_pre_fanotify_init(...)
1874#define __sanitizer_syscall_pre_fanotify_mark(...)
1875#define __sanitizer_syscall_pre_fchown32(...)
1876#define __sanitizer_syscall_pre_ftime(...)
1877#define __sanitizer_syscall_pre_ftruncate64(...)
1878#define __sanitizer_syscall_pre_futex(...)
1879#define __sanitizer_syscall_pre_getegid32(...)
1880#define __sanitizer_syscall_pre_geteuid32(...)
1881#define __sanitizer_syscall_pre_getgid32(...)
1882#define __sanitizer_syscall_pre_getgroups32(...)
1883#define __sanitizer_syscall_pre_get_kernel_syms(...)
1884#define __sanitizer_syscall_pre_getpmsg(...)
1885#define __sanitizer_syscall_pre_getresgid32(...)
1886#define __sanitizer_syscall_pre_getresuid32(...)
1887#define __sanitizer_syscall_pre_get_thread_area(...)
1888#define __sanitizer_syscall_pre_getuid32(...)
1889#define __sanitizer_syscall_pre_gtty(...)
1890#define __sanitizer_syscall_pre_idle(...)
1891#define __sanitizer_syscall_pre_iopl(...)
1892#define __sanitizer_syscall_pre_lchown32(...)
1893#define __sanitizer_syscall_pre__llseek(...)
1894#define __sanitizer_syscall_pre_lock(...)
1895#define __sanitizer_syscall_pre_madvise1(...)
1896#define __sanitizer_syscall_pre_mmap(...)
1897#define __sanitizer_syscall_pre_mmap2(...)
1898#define __sanitizer_syscall_pre_modify_ldt(...)
1899#define __sanitizer_syscall_pre_mpx(...)
1900#define __sanitizer_syscall_pre__newselect(...)
1901#define __sanitizer_syscall_pre_nfsservctl(...)
1902#define __sanitizer_syscall_pre_oldfstat(...)
1903#define __sanitizer_syscall_pre_oldlstat(...)
1904#define __sanitizer_syscall_pre_oldolduname(...)
1905#define __sanitizer_syscall_pre_oldstat(...)
1906#define __sanitizer_syscall_pre_prctl(...)
1907#define __sanitizer_syscall_pre_prof(...)
1908#define __sanitizer_syscall_pre_profil(...)
1909#define __sanitizer_syscall_pre_putpmsg(...)
1910#define __sanitizer_syscall_pre_query_module(...)
1911#define __sanitizer_syscall_pre_readahead(...)
1912#define __sanitizer_syscall_pre_readdir(...)
1913#define __sanitizer_syscall_pre_rt_sigreturn(...)
1914#define __sanitizer_syscall_pre_rt_sigsuspend(...)
1915#define __sanitizer_syscall_pre_security(...)
1916#define __sanitizer_syscall_pre_setfsgid32(...)
1917#define __sanitizer_syscall_pre_setfsuid32(...)
1918#define __sanitizer_syscall_pre_setgid32(...)
1919#define __sanitizer_syscall_pre_setgroups32(...)
1920#define __sanitizer_syscall_pre_setregid32(...)
1921#define __sanitizer_syscall_pre_setresgid32(...)
1922#define __sanitizer_syscall_pre_setresuid32(...)
1923#define __sanitizer_syscall_pre_setreuid32(...)
1924#define __sanitizer_syscall_pre_set_thread_area(...)
1925#define __sanitizer_syscall_pre_setuid32(...)
Logan Chien55afb0a2018-10-15 10:42:14 +08001926#define __sanitizer_syscall_pre_sigreturn(...)
1927#define __sanitizer_syscall_pre_sigsuspend(...)
1928#define __sanitizer_syscall_pre_stty(...)
1929#define __sanitizer_syscall_pre_sync_file_range(...)
1930#define __sanitizer_syscall_pre__sysctl(...)
1931#define __sanitizer_syscall_pre_truncate64(...)
1932#define __sanitizer_syscall_pre_tuxcall(...)
1933#define __sanitizer_syscall_pre_ugetrlimit(...)
1934#define __sanitizer_syscall_pre_ulimit(...)
1935#define __sanitizer_syscall_pre_umount2(...)
1936#define __sanitizer_syscall_pre_vm86(...)
1937#define __sanitizer_syscall_pre_vm86old(...)
1938#define __sanitizer_syscall_pre_vserver(...)
1939
1940#define __sanitizer_syscall_post_afs_syscall(res, ...)
1941#define __sanitizer_syscall_post_arch_prctl(res, ...)
1942#define __sanitizer_syscall_post_break(res, ...)
1943#define __sanitizer_syscall_post_chown32(res, ...)
1944#define __sanitizer_syscall_post_clone(res, ...)
1945#define __sanitizer_syscall_post_create_module(res, ...)
1946#define __sanitizer_syscall_post_epoll_ctl_old(res, ...)
1947#define __sanitizer_syscall_post_epoll_wait_old(res, ...)
1948#define __sanitizer_syscall_post_execve(res, ...)
1949#define __sanitizer_syscall_post_fadvise64(res, ...)
1950#define __sanitizer_syscall_post_fadvise64_64(res, ...)
1951#define __sanitizer_syscall_post_fallocate(res, ...)
1952#define __sanitizer_syscall_post_fanotify_init(res, ...)
1953#define __sanitizer_syscall_post_fanotify_mark(res, ...)
1954#define __sanitizer_syscall_post_fchown32(res, ...)
1955#define __sanitizer_syscall_post_ftime(res, ...)
1956#define __sanitizer_syscall_post_ftruncate64(res, ...)
1957#define __sanitizer_syscall_post_futex(res, ...)
1958#define __sanitizer_syscall_post_getegid32(res, ...)
1959#define __sanitizer_syscall_post_geteuid32(res, ...)
1960#define __sanitizer_syscall_post_getgid32(res, ...)
1961#define __sanitizer_syscall_post_getgroups32(res, ...)
1962#define __sanitizer_syscall_post_get_kernel_syms(res, ...)
1963#define __sanitizer_syscall_post_getpmsg(res, ...)
1964#define __sanitizer_syscall_post_getresgid32(res, ...)
1965#define __sanitizer_syscall_post_getresuid32(res, ...)
1966#define __sanitizer_syscall_post_get_thread_area(res, ...)
1967#define __sanitizer_syscall_post_getuid32(res, ...)
1968#define __sanitizer_syscall_post_gtty(res, ...)
1969#define __sanitizer_syscall_post_idle(res, ...)
1970#define __sanitizer_syscall_post_iopl(res, ...)
1971#define __sanitizer_syscall_post_lchown32(res, ...)
1972#define __sanitizer_syscall_post__llseek(res, ...)
1973#define __sanitizer_syscall_post_lock(res, ...)
1974#define __sanitizer_syscall_post_madvise1(res, ...)
1975#define __sanitizer_syscall_post_mmap2(res, ...)
1976#define __sanitizer_syscall_post_mmap(res, ...)
1977#define __sanitizer_syscall_post_modify_ldt(res, ...)
1978#define __sanitizer_syscall_post_mpx(res, ...)
1979#define __sanitizer_syscall_post__newselect(res, ...)
1980#define __sanitizer_syscall_post_nfsservctl(res, ...)
1981#define __sanitizer_syscall_post_oldfstat(res, ...)
1982#define __sanitizer_syscall_post_oldlstat(res, ...)
1983#define __sanitizer_syscall_post_oldolduname(res, ...)
1984#define __sanitizer_syscall_post_oldstat(res, ...)
1985#define __sanitizer_syscall_post_prctl(res, ...)
1986#define __sanitizer_syscall_post_profil(res, ...)
1987#define __sanitizer_syscall_post_prof(res, ...)
1988#define __sanitizer_syscall_post_putpmsg(res, ...)
1989#define __sanitizer_syscall_post_query_module(res, ...)
1990#define __sanitizer_syscall_post_readahead(res, ...)
1991#define __sanitizer_syscall_post_readdir(res, ...)
1992#define __sanitizer_syscall_post_rt_sigreturn(res, ...)
1993#define __sanitizer_syscall_post_rt_sigsuspend(res, ...)
1994#define __sanitizer_syscall_post_security(res, ...)
1995#define __sanitizer_syscall_post_setfsgid32(res, ...)
1996#define __sanitizer_syscall_post_setfsuid32(res, ...)
1997#define __sanitizer_syscall_post_setgid32(res, ...)
1998#define __sanitizer_syscall_post_setgroups32(res, ...)
1999#define __sanitizer_syscall_post_setregid32(res, ...)
2000#define __sanitizer_syscall_post_setresgid32(res, ...)
2001#define __sanitizer_syscall_post_setresuid32(res, ...)
2002#define __sanitizer_syscall_post_setreuid32(res, ...)
2003#define __sanitizer_syscall_post_set_thread_area(res, ...)
2004#define __sanitizer_syscall_post_setuid32(res, ...)
Logan Chien55afb0a2018-10-15 10:42:14 +08002005#define __sanitizer_syscall_post_sigreturn(res, ...)
2006#define __sanitizer_syscall_post_sigsuspend(res, ...)
2007#define __sanitizer_syscall_post_stty(res, ...)
2008#define __sanitizer_syscall_post_sync_file_range(res, ...)
2009#define __sanitizer_syscall_post__sysctl(res, ...)
2010#define __sanitizer_syscall_post_truncate64(res, ...)
2011#define __sanitizer_syscall_post_tuxcall(res, ...)
2012#define __sanitizer_syscall_post_ugetrlimit(res, ...)
2013#define __sanitizer_syscall_post_ulimit(res, ...)
2014#define __sanitizer_syscall_post_umount2(res, ...)
2015#define __sanitizer_syscall_post_vm86old(res, ...)
2016#define __sanitizer_syscall_post_vm86(res, ...)
2017#define __sanitizer_syscall_post_vserver(res, ...)
2018
2019#ifdef __cplusplus
2020extern "C" {
2021#endif
2022
2023// Private declarations. Do not call directly from user code. Use macros above.
2024void __sanitizer_syscall_pre_impl_time(long tloc);
2025void __sanitizer_syscall_post_impl_time(long res, long tloc);
2026void __sanitizer_syscall_pre_impl_stime(long tptr);
2027void __sanitizer_syscall_post_impl_stime(long res, long tptr);
2028void __sanitizer_syscall_pre_impl_gettimeofday(long tv, long tz);
2029void __sanitizer_syscall_post_impl_gettimeofday(long res, long tv, long tz);
2030void __sanitizer_syscall_pre_impl_settimeofday(long tv, long tz);
2031void __sanitizer_syscall_post_impl_settimeofday(long res, long tv, long tz);
2032void __sanitizer_syscall_pre_impl_adjtimex(long txc_p);
2033void __sanitizer_syscall_post_impl_adjtimex(long res, long txc_p);
2034void __sanitizer_syscall_pre_impl_times(long tbuf);
2035void __sanitizer_syscall_post_impl_times(long res, long tbuf);
2036void __sanitizer_syscall_pre_impl_gettid();
2037void __sanitizer_syscall_post_impl_gettid(long res);
2038void __sanitizer_syscall_pre_impl_nanosleep(long rqtp, long rmtp);
2039void __sanitizer_syscall_post_impl_nanosleep(long res, long rqtp, long rmtp);
2040void __sanitizer_syscall_pre_impl_alarm(long seconds);
2041void __sanitizer_syscall_post_impl_alarm(long res, long seconds);
2042void __sanitizer_syscall_pre_impl_getpid();
2043void __sanitizer_syscall_post_impl_getpid(long res);
2044void __sanitizer_syscall_pre_impl_getppid();
2045void __sanitizer_syscall_post_impl_getppid(long res);
2046void __sanitizer_syscall_pre_impl_getuid();
2047void __sanitizer_syscall_post_impl_getuid(long res);
2048void __sanitizer_syscall_pre_impl_geteuid();
2049void __sanitizer_syscall_post_impl_geteuid(long res);
2050void __sanitizer_syscall_pre_impl_getgid();
2051void __sanitizer_syscall_post_impl_getgid(long res);
2052void __sanitizer_syscall_pre_impl_getegid();
2053void __sanitizer_syscall_post_impl_getegid(long res);
2054void __sanitizer_syscall_pre_impl_getresuid(long ruid, long euid, long suid);
2055void __sanitizer_syscall_post_impl_getresuid(long res, long ruid, long euid,
2056 long suid);
2057void __sanitizer_syscall_pre_impl_getresgid(long rgid, long egid, long sgid);
2058void __sanitizer_syscall_post_impl_getresgid(long res, long rgid, long egid,
2059 long sgid);
2060void __sanitizer_syscall_pre_impl_getpgid(long pid);
2061void __sanitizer_syscall_post_impl_getpgid(long res, long pid);
2062void __sanitizer_syscall_pre_impl_getpgrp();
2063void __sanitizer_syscall_post_impl_getpgrp(long res);
2064void __sanitizer_syscall_pre_impl_getsid(long pid);
2065void __sanitizer_syscall_post_impl_getsid(long res, long pid);
2066void __sanitizer_syscall_pre_impl_getgroups(long gidsetsize, long grouplist);
2067void __sanitizer_syscall_post_impl_getgroups(long res, long gidsetsize,
2068 long grouplist);
2069void __sanitizer_syscall_pre_impl_setregid(long rgid, long egid);
2070void __sanitizer_syscall_post_impl_setregid(long res, long rgid, long egid);
2071void __sanitizer_syscall_pre_impl_setgid(long gid);
2072void __sanitizer_syscall_post_impl_setgid(long res, long gid);
2073void __sanitizer_syscall_pre_impl_setreuid(long ruid, long euid);
2074void __sanitizer_syscall_post_impl_setreuid(long res, long ruid, long euid);
2075void __sanitizer_syscall_pre_impl_setuid(long uid);
2076void __sanitizer_syscall_post_impl_setuid(long res, long uid);
2077void __sanitizer_syscall_pre_impl_setresuid(long ruid, long euid, long suid);
2078void __sanitizer_syscall_post_impl_setresuid(long res, long ruid, long euid,
2079 long suid);
2080void __sanitizer_syscall_pre_impl_setresgid(long rgid, long egid, long sgid);
2081void __sanitizer_syscall_post_impl_setresgid(long res, long rgid, long egid,
2082 long sgid);
2083void __sanitizer_syscall_pre_impl_setfsuid(long uid);
2084void __sanitizer_syscall_post_impl_setfsuid(long res, long uid);
2085void __sanitizer_syscall_pre_impl_setfsgid(long gid);
2086void __sanitizer_syscall_post_impl_setfsgid(long res, long gid);
2087void __sanitizer_syscall_pre_impl_setpgid(long pid, long pgid);
2088void __sanitizer_syscall_post_impl_setpgid(long res, long pid, long pgid);
2089void __sanitizer_syscall_pre_impl_setsid();
2090void __sanitizer_syscall_post_impl_setsid(long res);
2091void __sanitizer_syscall_pre_impl_setgroups(long gidsetsize, long grouplist);
2092void __sanitizer_syscall_post_impl_setgroups(long res, long gidsetsize,
2093 long grouplist);
2094void __sanitizer_syscall_pre_impl_acct(long name);
2095void __sanitizer_syscall_post_impl_acct(long res, long name);
2096void __sanitizer_syscall_pre_impl_capget(long header, long dataptr);
2097void __sanitizer_syscall_post_impl_capget(long res, long header, long dataptr);
2098void __sanitizer_syscall_pre_impl_capset(long header, long data);
2099void __sanitizer_syscall_post_impl_capset(long res, long header, long data);
2100void __sanitizer_syscall_pre_impl_personality(long personality);
2101void __sanitizer_syscall_post_impl_personality(long res, long personality);
2102void __sanitizer_syscall_pre_impl_sigpending(long set);
2103void __sanitizer_syscall_post_impl_sigpending(long res, long set);
2104void __sanitizer_syscall_pre_impl_sigprocmask(long how, long set, long oset);
2105void __sanitizer_syscall_post_impl_sigprocmask(long res, long how, long set,
2106 long oset);
2107void __sanitizer_syscall_pre_impl_getitimer(long which, long value);
2108void __sanitizer_syscall_post_impl_getitimer(long res, long which, long value);
2109void __sanitizer_syscall_pre_impl_setitimer(long which, long value,
2110 long ovalue);
2111void __sanitizer_syscall_post_impl_setitimer(long res, long which, long value,
2112 long ovalue);
2113void __sanitizer_syscall_pre_impl_timer_create(long which_clock,
2114 long timer_event_spec,
2115 long created_timer_id);
2116void __sanitizer_syscall_post_impl_timer_create(long res, long which_clock,
2117 long timer_event_spec,
2118 long created_timer_id);
2119void __sanitizer_syscall_pre_impl_timer_gettime(long timer_id, long setting);
2120void __sanitizer_syscall_post_impl_timer_gettime(long res, long timer_id,
2121 long setting);
2122void __sanitizer_syscall_pre_impl_timer_getoverrun(long timer_id);
2123void __sanitizer_syscall_post_impl_timer_getoverrun(long res, long timer_id);
2124void __sanitizer_syscall_pre_impl_timer_settime(long timer_id, long flags,
2125 long new_setting,
2126 long old_setting);
2127void __sanitizer_syscall_post_impl_timer_settime(long res, long timer_id,
2128 long flags, long new_setting,
2129 long old_setting);
2130void __sanitizer_syscall_pre_impl_timer_delete(long timer_id);
2131void __sanitizer_syscall_post_impl_timer_delete(long res, long timer_id);
2132void __sanitizer_syscall_pre_impl_clock_settime(long which_clock, long tp);
2133void __sanitizer_syscall_post_impl_clock_settime(long res, long which_clock,
2134 long tp);
2135void __sanitizer_syscall_pre_impl_clock_gettime(long which_clock, long tp);
2136void __sanitizer_syscall_post_impl_clock_gettime(long res, long which_clock,
2137 long tp);
2138void __sanitizer_syscall_pre_impl_clock_adjtime(long which_clock, long tx);
2139void __sanitizer_syscall_post_impl_clock_adjtime(long res, long which_clock,
2140 long tx);
2141void __sanitizer_syscall_pre_impl_clock_getres(long which_clock, long tp);
2142void __sanitizer_syscall_post_impl_clock_getres(long res, long which_clock,
2143 long tp);
2144void __sanitizer_syscall_pre_impl_clock_nanosleep(long which_clock, long flags,
2145 long rqtp, long rmtp);
2146void __sanitizer_syscall_post_impl_clock_nanosleep(long res, long which_clock,
2147 long flags, long rqtp,
2148 long rmtp);
2149void __sanitizer_syscall_pre_impl_nice(long increment);
2150void __sanitizer_syscall_post_impl_nice(long res, long increment);
2151void __sanitizer_syscall_pre_impl_sched_setscheduler(long pid, long policy,
2152 long param);
2153void __sanitizer_syscall_post_impl_sched_setscheduler(long res, long pid,
2154 long policy, long param);
2155void __sanitizer_syscall_pre_impl_sched_setparam(long pid, long param);
2156void __sanitizer_syscall_post_impl_sched_setparam(long res, long pid,
2157 long param);
2158void __sanitizer_syscall_pre_impl_sched_getscheduler(long pid);
2159void __sanitizer_syscall_post_impl_sched_getscheduler(long res, long pid);
2160void __sanitizer_syscall_pre_impl_sched_getparam(long pid, long param);
2161void __sanitizer_syscall_post_impl_sched_getparam(long res, long pid,
2162 long param);
2163void __sanitizer_syscall_pre_impl_sched_setaffinity(long pid, long len,
2164 long user_mask_ptr);
2165void __sanitizer_syscall_post_impl_sched_setaffinity(long res, long pid,
2166 long len,
2167 long user_mask_ptr);
2168void __sanitizer_syscall_pre_impl_sched_getaffinity(long pid, long len,
2169 long user_mask_ptr);
2170void __sanitizer_syscall_post_impl_sched_getaffinity(long res, long pid,
2171 long len,
2172 long user_mask_ptr);
2173void __sanitizer_syscall_pre_impl_sched_yield();
2174void __sanitizer_syscall_post_impl_sched_yield(long res);
2175void __sanitizer_syscall_pre_impl_sched_get_priority_max(long policy);
2176void __sanitizer_syscall_post_impl_sched_get_priority_max(long res,
2177 long policy);
2178void __sanitizer_syscall_pre_impl_sched_get_priority_min(long policy);
2179void __sanitizer_syscall_post_impl_sched_get_priority_min(long res,
2180 long policy);
2181void __sanitizer_syscall_pre_impl_sched_rr_get_interval(long pid,
2182 long interval);
2183void __sanitizer_syscall_post_impl_sched_rr_get_interval(long res, long pid,
2184 long interval);
2185void __sanitizer_syscall_pre_impl_setpriority(long which, long who,
2186 long niceval);
2187void __sanitizer_syscall_post_impl_setpriority(long res, long which, long who,
2188 long niceval);
2189void __sanitizer_syscall_pre_impl_getpriority(long which, long who);
2190void __sanitizer_syscall_post_impl_getpriority(long res, long which, long who);
2191void __sanitizer_syscall_pre_impl_shutdown(long arg0, long arg1);
2192void __sanitizer_syscall_post_impl_shutdown(long res, long arg0, long arg1);
2193void __sanitizer_syscall_pre_impl_reboot(long magic1, long magic2, long cmd,
2194 long arg);
2195void __sanitizer_syscall_post_impl_reboot(long res, long magic1, long magic2,
2196 long cmd, long arg);
2197void __sanitizer_syscall_pre_impl_restart_syscall();
2198void __sanitizer_syscall_post_impl_restart_syscall(long res);
2199void __sanitizer_syscall_pre_impl_kexec_load(long entry, long nr_segments,
2200 long segments, long flags);
2201void __sanitizer_syscall_post_impl_kexec_load(long res, long entry,
2202 long nr_segments, long segments,
2203 long flags);
2204void __sanitizer_syscall_pre_impl_exit(long error_code);
2205void __sanitizer_syscall_post_impl_exit(long res, long error_code);
2206void __sanitizer_syscall_pre_impl_exit_group(long error_code);
2207void __sanitizer_syscall_post_impl_exit_group(long res, long error_code);
2208void __sanitizer_syscall_pre_impl_wait4(long pid, long stat_addr, long options,
2209 long ru);
2210void __sanitizer_syscall_post_impl_wait4(long res, long pid, long stat_addr,
2211 long options, long ru);
2212void __sanitizer_syscall_pre_impl_waitid(long which, long pid, long infop,
2213 long options, long ru);
2214void __sanitizer_syscall_post_impl_waitid(long res, long which, long pid,
2215 long infop, long options, long ru);
2216void __sanitizer_syscall_pre_impl_waitpid(long pid, long stat_addr,
2217 long options);
2218void __sanitizer_syscall_post_impl_waitpid(long res, long pid, long stat_addr,
2219 long options);
2220void __sanitizer_syscall_pre_impl_set_tid_address(long tidptr);
2221void __sanitizer_syscall_post_impl_set_tid_address(long res, long tidptr);
2222void __sanitizer_syscall_pre_impl_init_module(long umod, long len, long uargs);
2223void __sanitizer_syscall_post_impl_init_module(long res, long umod, long len,
2224 long uargs);
2225void __sanitizer_syscall_pre_impl_delete_module(long name_user, long flags);
2226void __sanitizer_syscall_post_impl_delete_module(long res, long name_user,
2227 long flags);
2228void __sanitizer_syscall_pre_impl_rt_sigprocmask(long how, long set, long oset,
2229 long sigsetsize);
2230void __sanitizer_syscall_post_impl_rt_sigprocmask(long res, long how, long set,
2231 long oset, long sigsetsize);
2232void __sanitizer_syscall_pre_impl_rt_sigpending(long set, long sigsetsize);
2233void __sanitizer_syscall_post_impl_rt_sigpending(long res, long set,
2234 long sigsetsize);
2235void __sanitizer_syscall_pre_impl_rt_sigtimedwait(long uthese, long uinfo,
2236 long uts, long sigsetsize);
2237void __sanitizer_syscall_post_impl_rt_sigtimedwait(long res, long uthese,
2238 long uinfo, long uts,
2239 long sigsetsize);
2240void __sanitizer_syscall_pre_impl_rt_tgsigqueueinfo(long tgid, long pid,
2241 long sig, long uinfo);
2242void __sanitizer_syscall_post_impl_rt_tgsigqueueinfo(long res, long tgid,
2243 long pid, long sig,
2244 long uinfo);
2245void __sanitizer_syscall_pre_impl_kill(long pid, long sig);
2246void __sanitizer_syscall_post_impl_kill(long res, long pid, long sig);
2247void __sanitizer_syscall_pre_impl_tgkill(long tgid, long pid, long sig);
2248void __sanitizer_syscall_post_impl_tgkill(long res, long tgid, long pid,
2249 long sig);
2250void __sanitizer_syscall_pre_impl_tkill(long pid, long sig);
2251void __sanitizer_syscall_post_impl_tkill(long res, long pid, long sig);
2252void __sanitizer_syscall_pre_impl_rt_sigqueueinfo(long pid, long sig,
2253 long uinfo);
2254void __sanitizer_syscall_post_impl_rt_sigqueueinfo(long res, long pid, long sig,
2255 long uinfo);
2256void __sanitizer_syscall_pre_impl_sgetmask();
2257void __sanitizer_syscall_post_impl_sgetmask(long res);
2258void __sanitizer_syscall_pre_impl_ssetmask(long newmask);
2259void __sanitizer_syscall_post_impl_ssetmask(long res, long newmask);
2260void __sanitizer_syscall_pre_impl_signal(long sig, long handler);
2261void __sanitizer_syscall_post_impl_signal(long res, long sig, long handler);
2262void __sanitizer_syscall_pre_impl_pause();
2263void __sanitizer_syscall_post_impl_pause(long res);
2264void __sanitizer_syscall_pre_impl_sync();
2265void __sanitizer_syscall_post_impl_sync(long res);
2266void __sanitizer_syscall_pre_impl_fsync(long fd);
2267void __sanitizer_syscall_post_impl_fsync(long res, long fd);
2268void __sanitizer_syscall_pre_impl_fdatasync(long fd);
2269void __sanitizer_syscall_post_impl_fdatasync(long res, long fd);
2270void __sanitizer_syscall_pre_impl_bdflush(long func, long data);
2271void __sanitizer_syscall_post_impl_bdflush(long res, long func, long data);
2272void __sanitizer_syscall_pre_impl_mount(long dev_name, long dir_name, long type,
2273 long flags, long data);
2274void __sanitizer_syscall_post_impl_mount(long res, long dev_name, long dir_name,
2275 long type, long flags, long data);
2276void __sanitizer_syscall_pre_impl_umount(long name, long flags);
2277void __sanitizer_syscall_post_impl_umount(long res, long name, long flags);
2278void __sanitizer_syscall_pre_impl_oldumount(long name);
2279void __sanitizer_syscall_post_impl_oldumount(long res, long name);
2280void __sanitizer_syscall_pre_impl_truncate(long path, long length);
2281void __sanitizer_syscall_post_impl_truncate(long res, long path, long length);
2282void __sanitizer_syscall_pre_impl_ftruncate(long fd, long length);
2283void __sanitizer_syscall_post_impl_ftruncate(long res, long fd, long length);
2284void __sanitizer_syscall_pre_impl_stat(long filename, long statbuf);
2285void __sanitizer_syscall_post_impl_stat(long res, long filename, long statbuf);
2286void __sanitizer_syscall_pre_impl_statfs(long path, long buf);
2287void __sanitizer_syscall_post_impl_statfs(long res, long path, long buf);
2288void __sanitizer_syscall_pre_impl_statfs64(long path, long sz, long buf);
2289void __sanitizer_syscall_post_impl_statfs64(long res, long path, long sz,
2290 long buf);
2291void __sanitizer_syscall_pre_impl_fstatfs(long fd, long buf);
2292void __sanitizer_syscall_post_impl_fstatfs(long res, long fd, long buf);
2293void __sanitizer_syscall_pre_impl_fstatfs64(long fd, long sz, long buf);
2294void __sanitizer_syscall_post_impl_fstatfs64(long res, long fd, long sz,
2295 long buf);
2296void __sanitizer_syscall_pre_impl_lstat(long filename, long statbuf);
2297void __sanitizer_syscall_post_impl_lstat(long res, long filename, long statbuf);
2298void __sanitizer_syscall_pre_impl_fstat(long fd, long statbuf);
2299void __sanitizer_syscall_post_impl_fstat(long res, long fd, long statbuf);
2300void __sanitizer_syscall_pre_impl_newstat(long filename, long statbuf);
2301void __sanitizer_syscall_post_impl_newstat(long res, long filename,
2302 long statbuf);
2303void __sanitizer_syscall_pre_impl_newlstat(long filename, long statbuf);
2304void __sanitizer_syscall_post_impl_newlstat(long res, long filename,
2305 long statbuf);
2306void __sanitizer_syscall_pre_impl_newfstat(long fd, long statbuf);
2307void __sanitizer_syscall_post_impl_newfstat(long res, long fd, long statbuf);
2308void __sanitizer_syscall_pre_impl_ustat(long dev, long ubuf);
2309void __sanitizer_syscall_post_impl_ustat(long res, long dev, long ubuf);
2310void __sanitizer_syscall_pre_impl_stat64(long filename, long statbuf);
2311void __sanitizer_syscall_post_impl_stat64(long res, long filename,
2312 long statbuf);
2313void __sanitizer_syscall_pre_impl_fstat64(long fd, long statbuf);
2314void __sanitizer_syscall_post_impl_fstat64(long res, long fd, long statbuf);
2315void __sanitizer_syscall_pre_impl_lstat64(long filename, long statbuf);
2316void __sanitizer_syscall_post_impl_lstat64(long res, long filename,
2317 long statbuf);
2318void __sanitizer_syscall_pre_impl_setxattr(long path, long name, long value,
2319 long size, long flags);
2320void __sanitizer_syscall_post_impl_setxattr(long res, long path, long name,
2321 long value, long size, long flags);
2322void __sanitizer_syscall_pre_impl_lsetxattr(long path, long name, long value,
2323 long size, long flags);
2324void __sanitizer_syscall_post_impl_lsetxattr(long res, long path, long name,
2325 long value, long size, long flags);
2326void __sanitizer_syscall_pre_impl_fsetxattr(long fd, long name, long value,
2327 long size, long flags);
2328void __sanitizer_syscall_post_impl_fsetxattr(long res, long fd, long name,
2329 long value, long size, long flags);
2330void __sanitizer_syscall_pre_impl_getxattr(long path, long name, long value,
2331 long size);
2332void __sanitizer_syscall_post_impl_getxattr(long res, long path, long name,
2333 long value, long size);
2334void __sanitizer_syscall_pre_impl_lgetxattr(long path, long name, long value,
2335 long size);
2336void __sanitizer_syscall_post_impl_lgetxattr(long res, long path, long name,
2337 long value, long size);
2338void __sanitizer_syscall_pre_impl_fgetxattr(long fd, long name, long value,
2339 long size);
2340void __sanitizer_syscall_post_impl_fgetxattr(long res, long fd, long name,
2341 long value, long size);
2342void __sanitizer_syscall_pre_impl_listxattr(long path, long list, long size);
2343void __sanitizer_syscall_post_impl_listxattr(long res, long path, long list,
2344 long size);
2345void __sanitizer_syscall_pre_impl_llistxattr(long path, long list, long size);
2346void __sanitizer_syscall_post_impl_llistxattr(long res, long path, long list,
2347 long size);
2348void __sanitizer_syscall_pre_impl_flistxattr(long fd, long list, long size);
2349void __sanitizer_syscall_post_impl_flistxattr(long res, long fd, long list,
2350 long size);
2351void __sanitizer_syscall_pre_impl_removexattr(long path, long name);
2352void __sanitizer_syscall_post_impl_removexattr(long res, long path, long name);
2353void __sanitizer_syscall_pre_impl_lremovexattr(long path, long name);
2354void __sanitizer_syscall_post_impl_lremovexattr(long res, long path, long name);
2355void __sanitizer_syscall_pre_impl_fremovexattr(long fd, long name);
2356void __sanitizer_syscall_post_impl_fremovexattr(long res, long fd, long name);
2357void __sanitizer_syscall_pre_impl_brk(long brk);
2358void __sanitizer_syscall_post_impl_brk(long res, long brk);
2359void __sanitizer_syscall_pre_impl_mprotect(long start, long len, long prot);
2360void __sanitizer_syscall_post_impl_mprotect(long res, long start, long len,
2361 long prot);
2362void __sanitizer_syscall_pre_impl_mremap(long addr, long old_len, long new_len,
2363 long flags, long new_addr);
2364void __sanitizer_syscall_post_impl_mremap(long res, long addr, long old_len,
2365 long new_len, long flags,
2366 long new_addr);
2367void __sanitizer_syscall_pre_impl_remap_file_pages(long start, long size,
2368 long prot, long pgoff,
2369 long flags);
2370void __sanitizer_syscall_post_impl_remap_file_pages(long res, long start,
2371 long size, long prot,
2372 long pgoff, long flags);
2373void __sanitizer_syscall_pre_impl_msync(long start, long len, long flags);
2374void __sanitizer_syscall_post_impl_msync(long res, long start, long len,
2375 long flags);
2376void __sanitizer_syscall_pre_impl_munmap(long addr, long len);
2377void __sanitizer_syscall_post_impl_munmap(long res, long addr, long len);
2378void __sanitizer_syscall_pre_impl_mlock(long start, long len);
2379void __sanitizer_syscall_post_impl_mlock(long res, long start, long len);
2380void __sanitizer_syscall_pre_impl_munlock(long start, long len);
2381void __sanitizer_syscall_post_impl_munlock(long res, long start, long len);
2382void __sanitizer_syscall_pre_impl_mlockall(long flags);
2383void __sanitizer_syscall_post_impl_mlockall(long res, long flags);
2384void __sanitizer_syscall_pre_impl_munlockall();
2385void __sanitizer_syscall_post_impl_munlockall(long res);
2386void __sanitizer_syscall_pre_impl_madvise(long start, long len, long behavior);
2387void __sanitizer_syscall_post_impl_madvise(long res, long start, long len,
2388 long behavior);
2389void __sanitizer_syscall_pre_impl_mincore(long start, long len, long vec);
2390void __sanitizer_syscall_post_impl_mincore(long res, long start, long len,
2391 long vec);
2392void __sanitizer_syscall_pre_impl_pivot_root(long new_root, long put_old);
2393void __sanitizer_syscall_post_impl_pivot_root(long res, long new_root,
2394 long put_old);
2395void __sanitizer_syscall_pre_impl_chroot(long filename);
2396void __sanitizer_syscall_post_impl_chroot(long res, long filename);
2397void __sanitizer_syscall_pre_impl_mknod(long filename, long mode, long dev);
2398void __sanitizer_syscall_post_impl_mknod(long res, long filename, long mode,
2399 long dev);
2400void __sanitizer_syscall_pre_impl_link(long oldname, long newname);
2401void __sanitizer_syscall_post_impl_link(long res, long oldname, long newname);
2402void __sanitizer_syscall_pre_impl_symlink(long old, long new_);
2403void __sanitizer_syscall_post_impl_symlink(long res, long old, long new_);
2404void __sanitizer_syscall_pre_impl_unlink(long pathname);
2405void __sanitizer_syscall_post_impl_unlink(long res, long pathname);
2406void __sanitizer_syscall_pre_impl_rename(long oldname, long newname);
2407void __sanitizer_syscall_post_impl_rename(long res, long oldname, long newname);
2408void __sanitizer_syscall_pre_impl_chmod(long filename, long mode);
2409void __sanitizer_syscall_post_impl_chmod(long res, long filename, long mode);
2410void __sanitizer_syscall_pre_impl_fchmod(long fd, long mode);
2411void __sanitizer_syscall_post_impl_fchmod(long res, long fd, long mode);
2412void __sanitizer_syscall_pre_impl_fcntl(long fd, long cmd, long arg);
2413void __sanitizer_syscall_post_impl_fcntl(long res, long fd, long cmd, long arg);
2414void __sanitizer_syscall_pre_impl_fcntl64(long fd, long cmd, long arg);
2415void __sanitizer_syscall_post_impl_fcntl64(long res, long fd, long cmd,
2416 long arg);
2417void __sanitizer_syscall_pre_impl_pipe(long fildes);
2418void __sanitizer_syscall_post_impl_pipe(long res, long fildes);
2419void __sanitizer_syscall_pre_impl_pipe2(long fildes, long flags);
2420void __sanitizer_syscall_post_impl_pipe2(long res, long fildes, long flags);
2421void __sanitizer_syscall_pre_impl_dup(long fildes);
2422void __sanitizer_syscall_post_impl_dup(long res, long fildes);
2423void __sanitizer_syscall_pre_impl_dup2(long oldfd, long newfd);
2424void __sanitizer_syscall_post_impl_dup2(long res, long oldfd, long newfd);
2425void __sanitizer_syscall_pre_impl_dup3(long oldfd, long newfd, long flags);
2426void __sanitizer_syscall_post_impl_dup3(long res, long oldfd, long newfd,
2427 long flags);
2428void __sanitizer_syscall_pre_impl_ioperm(long from, long num, long on);
2429void __sanitizer_syscall_post_impl_ioperm(long res, long from, long num,
2430 long on);
2431void __sanitizer_syscall_pre_impl_ioctl(long fd, long cmd, long arg);
2432void __sanitizer_syscall_post_impl_ioctl(long res, long fd, long cmd, long arg);
2433void __sanitizer_syscall_pre_impl_flock(long fd, long cmd);
2434void __sanitizer_syscall_post_impl_flock(long res, long fd, long cmd);
2435void __sanitizer_syscall_pre_impl_io_setup(long nr_reqs, long ctx);
2436void __sanitizer_syscall_post_impl_io_setup(long res, long nr_reqs, long ctx);
2437void __sanitizer_syscall_pre_impl_io_destroy(long ctx);
2438void __sanitizer_syscall_post_impl_io_destroy(long res, long ctx);
2439void __sanitizer_syscall_pre_impl_io_getevents(long ctx_id, long min_nr,
2440 long nr, long events,
2441 long timeout);
2442void __sanitizer_syscall_post_impl_io_getevents(long res, long ctx_id,
2443 long min_nr, long nr,
2444 long events, long timeout);
2445void __sanitizer_syscall_pre_impl_io_submit(long ctx_id, long arg1, long arg2);
2446void __sanitizer_syscall_post_impl_io_submit(long res, long ctx_id, long arg1,
2447 long arg2);
2448void __sanitizer_syscall_pre_impl_io_cancel(long ctx_id, long iocb,
2449 long result);
2450void __sanitizer_syscall_post_impl_io_cancel(long res, long ctx_id, long iocb,
2451 long result);
2452void __sanitizer_syscall_pre_impl_sendfile(long out_fd, long in_fd, long offset,
2453 long count);
2454void __sanitizer_syscall_post_impl_sendfile(long res, long out_fd, long in_fd,
2455 long offset, long count);
2456void __sanitizer_syscall_pre_impl_sendfile64(long out_fd, long in_fd,
2457 long offset, long count);
2458void __sanitizer_syscall_post_impl_sendfile64(long res, long out_fd, long in_fd,
2459 long offset, long count);
2460void __sanitizer_syscall_pre_impl_readlink(long path, long buf, long bufsiz);
2461void __sanitizer_syscall_post_impl_readlink(long res, long path, long buf,
2462 long bufsiz);
2463void __sanitizer_syscall_pre_impl_creat(long pathname, long mode);
2464void __sanitizer_syscall_post_impl_creat(long res, long pathname, long mode);
2465void __sanitizer_syscall_pre_impl_open(long filename, long flags, long mode);
2466void __sanitizer_syscall_post_impl_open(long res, long filename, long flags,
2467 long mode);
2468void __sanitizer_syscall_pre_impl_close(long fd);
2469void __sanitizer_syscall_post_impl_close(long res, long fd);
2470void __sanitizer_syscall_pre_impl_access(long filename, long mode);
2471void __sanitizer_syscall_post_impl_access(long res, long filename, long mode);
2472void __sanitizer_syscall_pre_impl_vhangup();
2473void __sanitizer_syscall_post_impl_vhangup(long res);
2474void __sanitizer_syscall_pre_impl_chown(long filename, long user, long group);
2475void __sanitizer_syscall_post_impl_chown(long res, long filename, long user,
2476 long group);
2477void __sanitizer_syscall_pre_impl_lchown(long filename, long user, long group);
2478void __sanitizer_syscall_post_impl_lchown(long res, long filename, long user,
2479 long group);
2480void __sanitizer_syscall_pre_impl_fchown(long fd, long user, long group);
2481void __sanitizer_syscall_post_impl_fchown(long res, long fd, long user,
2482 long group);
2483void __sanitizer_syscall_pre_impl_chown16(long filename, long user, long group);
2484void __sanitizer_syscall_post_impl_chown16(long res, long filename, long user,
2485 long group);
2486void __sanitizer_syscall_pre_impl_lchown16(long filename, long user,
2487 long group);
2488void __sanitizer_syscall_post_impl_lchown16(long res, long filename, long user,
2489 long group);
2490void __sanitizer_syscall_pre_impl_fchown16(long fd, long user, long group);
2491void __sanitizer_syscall_post_impl_fchown16(long res, long fd, long user,
2492 long group);
2493void __sanitizer_syscall_pre_impl_setregid16(long rgid, long egid);
2494void __sanitizer_syscall_post_impl_setregid16(long res, long rgid, long egid);
2495void __sanitizer_syscall_pre_impl_setgid16(long gid);
2496void __sanitizer_syscall_post_impl_setgid16(long res, long gid);
2497void __sanitizer_syscall_pre_impl_setreuid16(long ruid, long euid);
2498void __sanitizer_syscall_post_impl_setreuid16(long res, long ruid, long euid);
2499void __sanitizer_syscall_pre_impl_setuid16(long uid);
2500void __sanitizer_syscall_post_impl_setuid16(long res, long uid);
2501void __sanitizer_syscall_pre_impl_setresuid16(long ruid, long euid, long suid);
2502void __sanitizer_syscall_post_impl_setresuid16(long res, long ruid, long euid,
2503 long suid);
2504void __sanitizer_syscall_pre_impl_getresuid16(long ruid, long euid, long suid);
2505void __sanitizer_syscall_post_impl_getresuid16(long res, long ruid, long euid,
2506 long suid);
2507void __sanitizer_syscall_pre_impl_setresgid16(long rgid, long egid, long sgid);
2508void __sanitizer_syscall_post_impl_setresgid16(long res, long rgid, long egid,
2509 long sgid);
2510void __sanitizer_syscall_pre_impl_getresgid16(long rgid, long egid, long sgid);
2511void __sanitizer_syscall_post_impl_getresgid16(long res, long rgid, long egid,
2512 long sgid);
2513void __sanitizer_syscall_pre_impl_setfsuid16(long uid);
2514void __sanitizer_syscall_post_impl_setfsuid16(long res, long uid);
2515void __sanitizer_syscall_pre_impl_setfsgid16(long gid);
2516void __sanitizer_syscall_post_impl_setfsgid16(long res, long gid);
2517void __sanitizer_syscall_pre_impl_getgroups16(long gidsetsize, long grouplist);
2518void __sanitizer_syscall_post_impl_getgroups16(long res, long gidsetsize,
2519 long grouplist);
2520void __sanitizer_syscall_pre_impl_setgroups16(long gidsetsize, long grouplist);
2521void __sanitizer_syscall_post_impl_setgroups16(long res, long gidsetsize,
2522 long grouplist);
2523void __sanitizer_syscall_pre_impl_getuid16();
2524void __sanitizer_syscall_post_impl_getuid16(long res);
2525void __sanitizer_syscall_pre_impl_geteuid16();
2526void __sanitizer_syscall_post_impl_geteuid16(long res);
2527void __sanitizer_syscall_pre_impl_getgid16();
2528void __sanitizer_syscall_post_impl_getgid16(long res);
2529void __sanitizer_syscall_pre_impl_getegid16();
2530void __sanitizer_syscall_post_impl_getegid16(long res);
2531void __sanitizer_syscall_pre_impl_utime(long filename, long times);
2532void __sanitizer_syscall_post_impl_utime(long res, long filename, long times);
2533void __sanitizer_syscall_pre_impl_utimes(long filename, long utimes);
2534void __sanitizer_syscall_post_impl_utimes(long res, long filename, long utimes);
2535void __sanitizer_syscall_pre_impl_lseek(long fd, long offset, long origin);
2536void __sanitizer_syscall_post_impl_lseek(long res, long fd, long offset,
2537 long origin);
2538void __sanitizer_syscall_pre_impl_llseek(long fd, long offset_high,
2539 long offset_low, long result,
2540 long origin);
2541void __sanitizer_syscall_post_impl_llseek(long res, long fd, long offset_high,
2542 long offset_low, long result,
2543 long origin);
2544void __sanitizer_syscall_pre_impl_read(long fd, long buf, long count);
2545void __sanitizer_syscall_post_impl_read(long res, long fd, long buf,
2546 long count);
2547void __sanitizer_syscall_pre_impl_readv(long fd, long vec, long vlen);
2548void __sanitizer_syscall_post_impl_readv(long res, long fd, long vec,
2549 long vlen);
2550void __sanitizer_syscall_pre_impl_write(long fd, long buf, long count);
2551void __sanitizer_syscall_post_impl_write(long res, long fd, long buf,
2552 long count);
2553void __sanitizer_syscall_pre_impl_writev(long fd, long vec, long vlen);
2554void __sanitizer_syscall_post_impl_writev(long res, long fd, long vec,
2555 long vlen);
2556
2557#ifdef _LP64
2558void __sanitizer_syscall_pre_impl_pread64(long fd, long buf, long count,
2559 long pos);
2560void __sanitizer_syscall_post_impl_pread64(long res, long fd, long buf,
2561 long count, long pos);
2562void __sanitizer_syscall_pre_impl_pwrite64(long fd, long buf, long count,
2563 long pos);
2564void __sanitizer_syscall_post_impl_pwrite64(long res, long fd, long buf,
2565 long count, long pos);
2566#else
2567void __sanitizer_syscall_pre_impl_pread64(long fd, long buf, long count,
2568 long pos0, long pos1);
2569void __sanitizer_syscall_post_impl_pread64(long res, long fd, long buf,
2570 long count, long pos0, long pos1);
2571void __sanitizer_syscall_pre_impl_pwrite64(long fd, long buf, long count,
2572 long pos0, long pos1);
2573void __sanitizer_syscall_post_impl_pwrite64(long res, long fd, long buf,
2574 long count, long pos0, long pos1);
2575#endif
2576
2577void __sanitizer_syscall_pre_impl_preadv(long fd, long vec, long vlen,
2578 long pos_l, long pos_h);
2579void __sanitizer_syscall_post_impl_preadv(long res, long fd, long vec,
2580 long vlen, long pos_l, long pos_h);
2581void __sanitizer_syscall_pre_impl_pwritev(long fd, long vec, long vlen,
2582 long pos_l, long pos_h);
2583void __sanitizer_syscall_post_impl_pwritev(long res, long fd, long vec,
2584 long vlen, long pos_l, long pos_h);
2585void __sanitizer_syscall_pre_impl_getcwd(long buf, long size);
2586void __sanitizer_syscall_post_impl_getcwd(long res, long buf, long size);
2587void __sanitizer_syscall_pre_impl_mkdir(long pathname, long mode);
2588void __sanitizer_syscall_post_impl_mkdir(long res, long pathname, long mode);
2589void __sanitizer_syscall_pre_impl_chdir(long filename);
2590void __sanitizer_syscall_post_impl_chdir(long res, long filename);
2591void __sanitizer_syscall_pre_impl_fchdir(long fd);
2592void __sanitizer_syscall_post_impl_fchdir(long res, long fd);
2593void __sanitizer_syscall_pre_impl_rmdir(long pathname);
2594void __sanitizer_syscall_post_impl_rmdir(long res, long pathname);
2595void __sanitizer_syscall_pre_impl_lookup_dcookie(long cookie64, long buf,
2596 long len);
2597void __sanitizer_syscall_post_impl_lookup_dcookie(long res, long cookie64,
2598 long buf, long len);
2599void __sanitizer_syscall_pre_impl_quotactl(long cmd, long special, long id,
2600 long addr);
2601void __sanitizer_syscall_post_impl_quotactl(long res, long cmd, long special,
2602 long id, long addr);
2603void __sanitizer_syscall_pre_impl_getdents(long fd, long dirent, long count);
2604void __sanitizer_syscall_post_impl_getdents(long res, long fd, long dirent,
2605 long count);
2606void __sanitizer_syscall_pre_impl_getdents64(long fd, long dirent, long count);
2607void __sanitizer_syscall_post_impl_getdents64(long res, long fd, long dirent,
2608 long count);
2609void __sanitizer_syscall_pre_impl_setsockopt(long fd, long level, long optname,
2610 long optval, long optlen);
2611void __sanitizer_syscall_post_impl_setsockopt(long res, long fd, long level,
2612 long optname, long optval,
2613 long optlen);
2614void __sanitizer_syscall_pre_impl_getsockopt(long fd, long level, long optname,
2615 long optval, long optlen);
2616void __sanitizer_syscall_post_impl_getsockopt(long res, long fd, long level,
2617 long optname, long optval,
2618 long optlen);
2619void __sanitizer_syscall_pre_impl_bind(long arg0, long arg1, long arg2);
2620void __sanitizer_syscall_post_impl_bind(long res, long arg0, long arg1,
2621 long arg2);
2622void __sanitizer_syscall_pre_impl_connect(long arg0, long arg1, long arg2);
2623void __sanitizer_syscall_post_impl_connect(long res, long arg0, long arg1,
2624 long arg2);
2625void __sanitizer_syscall_pre_impl_accept(long arg0, long arg1, long arg2);
2626void __sanitizer_syscall_post_impl_accept(long res, long arg0, long arg1,
2627 long arg2);
2628void __sanitizer_syscall_pre_impl_accept4(long arg0, long arg1, long arg2,
2629 long arg3);
2630void __sanitizer_syscall_post_impl_accept4(long res, long arg0, long arg1,
2631 long arg2, long arg3);
2632void __sanitizer_syscall_pre_impl_getsockname(long arg0, long arg1, long arg2);
2633void __sanitizer_syscall_post_impl_getsockname(long res, long arg0, long arg1,
2634 long arg2);
2635void __sanitizer_syscall_pre_impl_getpeername(long arg0, long arg1, long arg2);
2636void __sanitizer_syscall_post_impl_getpeername(long res, long arg0, long arg1,
2637 long arg2);
2638void __sanitizer_syscall_pre_impl_send(long arg0, long arg1, long arg2,
2639 long arg3);
2640void __sanitizer_syscall_post_impl_send(long res, long arg0, long arg1,
2641 long arg2, long arg3);
2642void __sanitizer_syscall_pre_impl_sendto(long arg0, long arg1, long arg2,
2643 long arg3, long arg4, long arg5);
2644void __sanitizer_syscall_post_impl_sendto(long res, long arg0, long arg1,
2645 long arg2, long arg3, long arg4,
2646 long arg5);
2647void __sanitizer_syscall_pre_impl_sendmsg(long fd, long msg, long flags);
2648void __sanitizer_syscall_post_impl_sendmsg(long res, long fd, long msg,
2649 long flags);
2650void __sanitizer_syscall_pre_impl_sendmmsg(long fd, long msg, long vlen,
2651 long flags);
2652void __sanitizer_syscall_post_impl_sendmmsg(long res, long fd, long msg,
2653 long vlen, long flags);
2654void __sanitizer_syscall_pre_impl_recv(long arg0, long arg1, long arg2,
2655 long arg3);
2656void __sanitizer_syscall_post_impl_recv(long res, long arg0, long arg1,
2657 long arg2, long arg3);
2658void __sanitizer_syscall_pre_impl_recvfrom(long arg0, long arg1, long arg2,
2659 long arg3, long arg4, long arg5);
2660void __sanitizer_syscall_post_impl_recvfrom(long res, long arg0, long arg1,
2661 long arg2, long arg3, long arg4,
2662 long arg5);
2663void __sanitizer_syscall_pre_impl_recvmsg(long fd, long msg, long flags);
2664void __sanitizer_syscall_post_impl_recvmsg(long res, long fd, long msg,
2665 long flags);
2666void __sanitizer_syscall_pre_impl_recvmmsg(long fd, long msg, long vlen,
2667 long flags, long timeout);
2668void __sanitizer_syscall_post_impl_recvmmsg(long res, long fd, long msg,
2669 long vlen, long flags,
2670 long timeout);
2671void __sanitizer_syscall_pre_impl_socket(long arg0, long arg1, long arg2);
2672void __sanitizer_syscall_post_impl_socket(long res, long arg0, long arg1,
2673 long arg2);
2674void __sanitizer_syscall_pre_impl_socketpair(long arg0, long arg1, long arg2,
2675 long arg3);
2676void __sanitizer_syscall_post_impl_socketpair(long res, long arg0, long arg1,
2677 long arg2, long arg3);
2678void __sanitizer_syscall_pre_impl_socketcall(long call, long args);
2679void __sanitizer_syscall_post_impl_socketcall(long res, long call, long args);
2680void __sanitizer_syscall_pre_impl_listen(long arg0, long arg1);
2681void __sanitizer_syscall_post_impl_listen(long res, long arg0, long arg1);
2682void __sanitizer_syscall_pre_impl_poll(long ufds, long nfds, long timeout);
2683void __sanitizer_syscall_post_impl_poll(long res, long ufds, long nfds,
2684 long timeout);
2685void __sanitizer_syscall_pre_impl_select(long n, long inp, long outp, long exp,
2686 long tvp);
2687void __sanitizer_syscall_post_impl_select(long res, long n, long inp, long outp,
2688 long exp, long tvp);
2689void __sanitizer_syscall_pre_impl_old_select(long arg);
2690void __sanitizer_syscall_post_impl_old_select(long res, long arg);
2691void __sanitizer_syscall_pre_impl_epoll_create(long size);
2692void __sanitizer_syscall_post_impl_epoll_create(long res, long size);
2693void __sanitizer_syscall_pre_impl_epoll_create1(long flags);
2694void __sanitizer_syscall_post_impl_epoll_create1(long res, long flags);
2695void __sanitizer_syscall_pre_impl_epoll_ctl(long epfd, long op, long fd,
2696 long event);
2697void __sanitizer_syscall_post_impl_epoll_ctl(long res, long epfd, long op,
2698 long fd, long event);
2699void __sanitizer_syscall_pre_impl_epoll_wait(long epfd, long events,
2700 long maxevents, long timeout);
2701void __sanitizer_syscall_post_impl_epoll_wait(long res, long epfd, long events,
2702 long maxevents, long timeout);
2703void __sanitizer_syscall_pre_impl_epoll_pwait(long epfd, long events,
2704 long maxevents, long timeout,
2705 long sigmask, long sigsetsize);
2706void __sanitizer_syscall_post_impl_epoll_pwait(long res, long epfd, long events,
2707 long maxevents, long timeout,
2708 long sigmask, long sigsetsize);
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08002709void __sanitizer_syscall_pre_impl_epoll_pwait2(long epfd, long events,
2710 long maxevents, long timeout,
2711 long sigmask, long sigsetsize);
2712void __sanitizer_syscall_post_impl_epoll_pwait2(long res, long epfd,
2713 long events, long maxevents,
2714 long timeout, long sigmask,
2715 long sigsetsize);
Logan Chien55afb0a2018-10-15 10:42:14 +08002716void __sanitizer_syscall_pre_impl_gethostname(long name, long len);
2717void __sanitizer_syscall_post_impl_gethostname(long res, long name, long len);
2718void __sanitizer_syscall_pre_impl_sethostname(long name, long len);
2719void __sanitizer_syscall_post_impl_sethostname(long res, long name, long len);
2720void __sanitizer_syscall_pre_impl_setdomainname(long name, long len);
2721void __sanitizer_syscall_post_impl_setdomainname(long res, long name, long len);
2722void __sanitizer_syscall_pre_impl_newuname(long name);
2723void __sanitizer_syscall_post_impl_newuname(long res, long name);
2724void __sanitizer_syscall_pre_impl_uname(long arg0);
2725void __sanitizer_syscall_post_impl_uname(long res, long arg0);
2726void __sanitizer_syscall_pre_impl_olduname(long arg0);
2727void __sanitizer_syscall_post_impl_olduname(long res, long arg0);
2728void __sanitizer_syscall_pre_impl_getrlimit(long resource, long rlim);
2729void __sanitizer_syscall_post_impl_getrlimit(long res, long resource,
2730 long rlim);
2731void __sanitizer_syscall_pre_impl_old_getrlimit(long resource, long rlim);
2732void __sanitizer_syscall_post_impl_old_getrlimit(long res, long resource,
2733 long rlim);
2734void __sanitizer_syscall_pre_impl_setrlimit(long resource, long rlim);
2735void __sanitizer_syscall_post_impl_setrlimit(long res, long resource,
2736 long rlim);
2737void __sanitizer_syscall_pre_impl_prlimit64(long pid, long resource,
2738 long new_rlim, long old_rlim);
2739void __sanitizer_syscall_post_impl_prlimit64(long res, long pid, long resource,
2740 long new_rlim, long old_rlim);
2741void __sanitizer_syscall_pre_impl_getrusage(long who, long ru);
2742void __sanitizer_syscall_post_impl_getrusage(long res, long who, long ru);
2743void __sanitizer_syscall_pre_impl_umask(long mask);
2744void __sanitizer_syscall_post_impl_umask(long res, long mask);
2745void __sanitizer_syscall_pre_impl_msgget(long key, long msgflg);
2746void __sanitizer_syscall_post_impl_msgget(long res, long key, long msgflg);
2747void __sanitizer_syscall_pre_impl_msgsnd(long msqid, long msgp, long msgsz,
2748 long msgflg);
2749void __sanitizer_syscall_post_impl_msgsnd(long res, long msqid, long msgp,
2750 long msgsz, long msgflg);
2751void __sanitizer_syscall_pre_impl_msgrcv(long msqid, long msgp, long msgsz,
2752 long msgtyp, long msgflg);
2753void __sanitizer_syscall_post_impl_msgrcv(long res, long msqid, long msgp,
2754 long msgsz, long msgtyp, long msgflg);
2755void __sanitizer_syscall_pre_impl_msgctl(long msqid, long cmd, long buf);
2756void __sanitizer_syscall_post_impl_msgctl(long res, long msqid, long cmd,
2757 long buf);
2758void __sanitizer_syscall_pre_impl_semget(long key, long nsems, long semflg);
2759void __sanitizer_syscall_post_impl_semget(long res, long key, long nsems,
2760 long semflg);
2761void __sanitizer_syscall_pre_impl_semop(long semid, long sops, long nsops);
2762void __sanitizer_syscall_post_impl_semop(long res, long semid, long sops,
2763 long nsops);
2764void __sanitizer_syscall_pre_impl_semctl(long semid, long semnum, long cmd,
2765 long arg);
2766void __sanitizer_syscall_post_impl_semctl(long res, long semid, long semnum,
2767 long cmd, long arg);
2768void __sanitizer_syscall_pre_impl_semtimedop(long semid, long sops, long nsops,
2769 long timeout);
2770void __sanitizer_syscall_post_impl_semtimedop(long res, long semid, long sops,
2771 long nsops, long timeout);
2772void __sanitizer_syscall_pre_impl_shmat(long shmid, long shmaddr, long shmflg);
2773void __sanitizer_syscall_post_impl_shmat(long res, long shmid, long shmaddr,
2774 long shmflg);
2775void __sanitizer_syscall_pre_impl_shmget(long key, long size, long flag);
2776void __sanitizer_syscall_post_impl_shmget(long res, long key, long size,
2777 long flag);
2778void __sanitizer_syscall_pre_impl_shmdt(long shmaddr);
2779void __sanitizer_syscall_post_impl_shmdt(long res, long shmaddr);
2780void __sanitizer_syscall_pre_impl_shmctl(long shmid, long cmd, long buf);
2781void __sanitizer_syscall_post_impl_shmctl(long res, long shmid, long cmd,
2782 long buf);
2783void __sanitizer_syscall_pre_impl_ipc(long call, long first, long second,
2784 long third, long ptr, long fifth);
2785void __sanitizer_syscall_post_impl_ipc(long res, long call, long first,
2786 long second, long third, long ptr,
2787 long fifth);
2788void __sanitizer_syscall_pre_impl_mq_open(long name, long oflag, long mode,
2789 long attr);
2790void __sanitizer_syscall_post_impl_mq_open(long res, long name, long oflag,
2791 long mode, long attr);
2792void __sanitizer_syscall_pre_impl_mq_unlink(long name);
2793void __sanitizer_syscall_post_impl_mq_unlink(long res, long name);
2794void __sanitizer_syscall_pre_impl_mq_timedsend(long mqdes, long msg_ptr,
2795 long msg_len, long msg_prio,
2796 long abs_timeout);
2797void __sanitizer_syscall_post_impl_mq_timedsend(long res, long mqdes,
2798 long msg_ptr, long msg_len,
2799 long msg_prio,
2800 long abs_timeout);
2801void __sanitizer_syscall_pre_impl_mq_timedreceive(long mqdes, long msg_ptr,
2802 long msg_len, long msg_prio,
2803 long abs_timeout);
2804void __sanitizer_syscall_post_impl_mq_timedreceive(long res, long mqdes,
2805 long msg_ptr, long msg_len,
2806 long msg_prio,
2807 long abs_timeout);
2808void __sanitizer_syscall_pre_impl_mq_notify(long mqdes, long notification);
2809void __sanitizer_syscall_post_impl_mq_notify(long res, long mqdes,
2810 long notification);
2811void __sanitizer_syscall_pre_impl_mq_getsetattr(long mqdes, long mqstat,
2812 long omqstat);
2813void __sanitizer_syscall_post_impl_mq_getsetattr(long res, long mqdes,
2814 long mqstat, long omqstat);
2815void __sanitizer_syscall_pre_impl_pciconfig_iobase(long which, long bus,
2816 long devfn);
2817void __sanitizer_syscall_post_impl_pciconfig_iobase(long res, long which,
2818 long bus, long devfn);
2819void __sanitizer_syscall_pre_impl_pciconfig_read(long bus, long dfn, long off,
2820 long len, long buf);
2821void __sanitizer_syscall_post_impl_pciconfig_read(long res, long bus, long dfn,
2822 long off, long len, long buf);
2823void __sanitizer_syscall_pre_impl_pciconfig_write(long bus, long dfn, long off,
2824 long len, long buf);
2825void __sanitizer_syscall_post_impl_pciconfig_write(long res, long bus, long dfn,
2826 long off, long len,
2827 long buf);
2828void __sanitizer_syscall_pre_impl_swapon(long specialfile, long swap_flags);
2829void __sanitizer_syscall_post_impl_swapon(long res, long specialfile,
2830 long swap_flags);
2831void __sanitizer_syscall_pre_impl_swapoff(long specialfile);
2832void __sanitizer_syscall_post_impl_swapoff(long res, long specialfile);
2833void __sanitizer_syscall_pre_impl_sysctl(long args);
2834void __sanitizer_syscall_post_impl_sysctl(long res, long args);
2835void __sanitizer_syscall_pre_impl_sysinfo(long info);
2836void __sanitizer_syscall_post_impl_sysinfo(long res, long info);
2837void __sanitizer_syscall_pre_impl_sysfs(long option, long arg1, long arg2);
2838void __sanitizer_syscall_post_impl_sysfs(long res, long option, long arg1,
2839 long arg2);
2840void __sanitizer_syscall_pre_impl_syslog(long type, long buf, long len);
2841void __sanitizer_syscall_post_impl_syslog(long res, long type, long buf,
2842 long len);
2843void __sanitizer_syscall_pre_impl_uselib(long library);
2844void __sanitizer_syscall_post_impl_uselib(long res, long library);
2845void __sanitizer_syscall_pre_impl_ni_syscall();
2846void __sanitizer_syscall_post_impl_ni_syscall(long res);
2847void __sanitizer_syscall_pre_impl_ptrace(long request, long pid, long addr,
2848 long data);
2849void __sanitizer_syscall_post_impl_ptrace(long res, long request, long pid,
2850 long addr, long data);
2851void __sanitizer_syscall_pre_impl_add_key(long _type, long _description,
2852 long _payload, long plen,
2853 long destringid);
2854void __sanitizer_syscall_post_impl_add_key(long res, long _type,
2855 long _description, long _payload,
2856 long plen, long destringid);
2857void __sanitizer_syscall_pre_impl_request_key(long _type, long _description,
2858 long _callout_info,
2859 long destringid);
2860void __sanitizer_syscall_post_impl_request_key(long res, long _type,
2861 long _description,
2862 long _callout_info,
2863 long destringid);
2864void __sanitizer_syscall_pre_impl_keyctl(long cmd, long arg2, long arg3,
2865 long arg4, long arg5);
2866void __sanitizer_syscall_post_impl_keyctl(long res, long cmd, long arg2,
2867 long arg3, long arg4, long arg5);
2868void __sanitizer_syscall_pre_impl_ioprio_set(long which, long who, long ioprio);
2869void __sanitizer_syscall_post_impl_ioprio_set(long res, long which, long who,
2870 long ioprio);
2871void __sanitizer_syscall_pre_impl_ioprio_get(long which, long who);
2872void __sanitizer_syscall_post_impl_ioprio_get(long res, long which, long who);
2873void __sanitizer_syscall_pre_impl_set_mempolicy(long mode, long nmask,
2874 long maxnode);
2875void __sanitizer_syscall_post_impl_set_mempolicy(long res, long mode,
2876 long nmask, long maxnode);
2877void __sanitizer_syscall_pre_impl_migrate_pages(long pid, long maxnode,
2878 long from, long to);
2879void __sanitizer_syscall_post_impl_migrate_pages(long res, long pid,
2880 long maxnode, long from,
2881 long to);
2882void __sanitizer_syscall_pre_impl_move_pages(long pid, long nr_pages,
2883 long pages, long nodes,
2884 long status, long flags);
2885void __sanitizer_syscall_post_impl_move_pages(long res, long pid, long nr_pages,
2886 long pages, long nodes,
2887 long status, long flags);
2888void __sanitizer_syscall_pre_impl_mbind(long start, long len, long mode,
2889 long nmask, long maxnode, long flags);
2890void __sanitizer_syscall_post_impl_mbind(long res, long start, long len,
2891 long mode, long nmask, long maxnode,
2892 long flags);
2893void __sanitizer_syscall_pre_impl_get_mempolicy(long policy, long nmask,
2894 long maxnode, long addr,
2895 long flags);
2896void __sanitizer_syscall_post_impl_get_mempolicy(long res, long policy,
2897 long nmask, long maxnode,
2898 long addr, long flags);
2899void __sanitizer_syscall_pre_impl_inotify_init();
2900void __sanitizer_syscall_post_impl_inotify_init(long res);
2901void __sanitizer_syscall_pre_impl_inotify_init1(long flags);
2902void __sanitizer_syscall_post_impl_inotify_init1(long res, long flags);
2903void __sanitizer_syscall_pre_impl_inotify_add_watch(long fd, long path,
2904 long mask);
2905void __sanitizer_syscall_post_impl_inotify_add_watch(long res, long fd,
2906 long path, long mask);
2907void __sanitizer_syscall_pre_impl_inotify_rm_watch(long fd, long wd);
2908void __sanitizer_syscall_post_impl_inotify_rm_watch(long res, long fd, long wd);
2909void __sanitizer_syscall_pre_impl_spu_run(long fd, long unpc, long ustatus);
2910void __sanitizer_syscall_post_impl_spu_run(long res, long fd, long unpc,
2911 long ustatus);
2912void __sanitizer_syscall_pre_impl_spu_create(long name, long flags, long mode,
2913 long fd);
2914void __sanitizer_syscall_post_impl_spu_create(long res, long name, long flags,
2915 long mode, long fd);
2916void __sanitizer_syscall_pre_impl_mknodat(long dfd, long filename, long mode,
2917 long dev);
2918void __sanitizer_syscall_post_impl_mknodat(long res, long dfd, long filename,
2919 long mode, long dev);
2920void __sanitizer_syscall_pre_impl_mkdirat(long dfd, long pathname, long mode);
2921void __sanitizer_syscall_post_impl_mkdirat(long res, long dfd, long pathname,
2922 long mode);
2923void __sanitizer_syscall_pre_impl_unlinkat(long dfd, long pathname, long flag);
2924void __sanitizer_syscall_post_impl_unlinkat(long res, long dfd, long pathname,
2925 long flag);
2926void __sanitizer_syscall_pre_impl_symlinkat(long oldname, long newdfd,
2927 long newname);
2928void __sanitizer_syscall_post_impl_symlinkat(long res, long oldname,
2929 long newdfd, long newname);
2930void __sanitizer_syscall_pre_impl_linkat(long olddfd, long oldname, long newdfd,
2931 long newname, long flags);
2932void __sanitizer_syscall_post_impl_linkat(long res, long olddfd, long oldname,
2933 long newdfd, long newname,
2934 long flags);
2935void __sanitizer_syscall_pre_impl_renameat(long olddfd, long oldname,
2936 long newdfd, long newname);
2937void __sanitizer_syscall_post_impl_renameat(long res, long olddfd, long oldname,
2938 long newdfd, long newname);
2939void __sanitizer_syscall_pre_impl_futimesat(long dfd, long filename,
2940 long utimes);
2941void __sanitizer_syscall_post_impl_futimesat(long res, long dfd, long filename,
2942 long utimes);
2943void __sanitizer_syscall_pre_impl_faccessat(long dfd, long filename, long mode);
2944void __sanitizer_syscall_post_impl_faccessat(long res, long dfd, long filename,
2945 long mode);
2946void __sanitizer_syscall_pre_impl_fchmodat(long dfd, long filename, long mode);
2947void __sanitizer_syscall_post_impl_fchmodat(long res, long dfd, long filename,
2948 long mode);
2949void __sanitizer_syscall_pre_impl_fchownat(long dfd, long filename, long user,
2950 long group, long flag);
2951void __sanitizer_syscall_post_impl_fchownat(long res, long dfd, long filename,
2952 long user, long group, long flag);
2953void __sanitizer_syscall_pre_impl_openat(long dfd, long filename, long flags,
2954 long mode);
2955void __sanitizer_syscall_post_impl_openat(long res, long dfd, long filename,
2956 long flags, long mode);
2957void __sanitizer_syscall_pre_impl_newfstatat(long dfd, long filename,
2958 long statbuf, long flag);
2959void __sanitizer_syscall_post_impl_newfstatat(long res, long dfd, long filename,
2960 long statbuf, long flag);
2961void __sanitizer_syscall_pre_impl_fstatat64(long dfd, long filename,
2962 long statbuf, long flag);
2963void __sanitizer_syscall_post_impl_fstatat64(long res, long dfd, long filename,
2964 long statbuf, long flag);
2965void __sanitizer_syscall_pre_impl_readlinkat(long dfd, long path, long buf,
2966 long bufsiz);
2967void __sanitizer_syscall_post_impl_readlinkat(long res, long dfd, long path,
2968 long buf, long bufsiz);
2969void __sanitizer_syscall_pre_impl_utimensat(long dfd, long filename,
2970 long utimes, long flags);
2971void __sanitizer_syscall_post_impl_utimensat(long res, long dfd, long filename,
2972 long utimes, long flags);
2973void __sanitizer_syscall_pre_impl_unshare(long unshare_flags);
2974void __sanitizer_syscall_post_impl_unshare(long res, long unshare_flags);
2975void __sanitizer_syscall_pre_impl_splice(long fd_in, long off_in, long fd_out,
2976 long off_out, long len, long flags);
2977void __sanitizer_syscall_post_impl_splice(long res, long fd_in, long off_in,
2978 long fd_out, long off_out, long len,
2979 long flags);
2980void __sanitizer_syscall_pre_impl_vmsplice(long fd, long iov, long nr_segs,
2981 long flags);
2982void __sanitizer_syscall_post_impl_vmsplice(long res, long fd, long iov,
2983 long nr_segs, long flags);
2984void __sanitizer_syscall_pre_impl_tee(long fdin, long fdout, long len,
2985 long flags);
2986void __sanitizer_syscall_post_impl_tee(long res, long fdin, long fdout,
2987 long len, long flags);
2988void __sanitizer_syscall_pre_impl_get_robust_list(long pid, long head_ptr,
2989 long len_ptr);
2990void __sanitizer_syscall_post_impl_get_robust_list(long res, long pid,
2991 long head_ptr, long len_ptr);
2992void __sanitizer_syscall_pre_impl_set_robust_list(long head, long len);
2993void __sanitizer_syscall_post_impl_set_robust_list(long res, long head,
2994 long len);
2995void __sanitizer_syscall_pre_impl_getcpu(long cpu, long node, long cache);
2996void __sanitizer_syscall_post_impl_getcpu(long res, long cpu, long node,
2997 long cache);
2998void __sanitizer_syscall_pre_impl_signalfd(long ufd, long user_mask,
2999 long sizemask);
3000void __sanitizer_syscall_post_impl_signalfd(long res, long ufd, long user_mask,
3001 long sizemask);
3002void __sanitizer_syscall_pre_impl_signalfd4(long ufd, long user_mask,
3003 long sizemask, long flags);
3004void __sanitizer_syscall_post_impl_signalfd4(long res, long ufd, long user_mask,
3005 long sizemask, long flags);
3006void __sanitizer_syscall_pre_impl_timerfd_create(long clockid, long flags);
3007void __sanitizer_syscall_post_impl_timerfd_create(long res, long clockid,
3008 long flags);
3009void __sanitizer_syscall_pre_impl_timerfd_settime(long ufd, long flags,
3010 long utmr, long otmr);
3011void __sanitizer_syscall_post_impl_timerfd_settime(long res, long ufd,
3012 long flags, long utmr,
3013 long otmr);
3014void __sanitizer_syscall_pre_impl_timerfd_gettime(long ufd, long otmr);
3015void __sanitizer_syscall_post_impl_timerfd_gettime(long res, long ufd,
3016 long otmr);
3017void __sanitizer_syscall_pre_impl_eventfd(long count);
3018void __sanitizer_syscall_post_impl_eventfd(long res, long count);
3019void __sanitizer_syscall_pre_impl_eventfd2(long count, long flags);
3020void __sanitizer_syscall_post_impl_eventfd2(long res, long count, long flags);
3021void __sanitizer_syscall_pre_impl_old_readdir(long arg0, long arg1, long arg2);
3022void __sanitizer_syscall_post_impl_old_readdir(long res, long arg0, long arg1,
3023 long arg2);
3024void __sanitizer_syscall_pre_impl_pselect6(long arg0, long arg1, long arg2,
3025 long arg3, long arg4, long arg5);
3026void __sanitizer_syscall_post_impl_pselect6(long res, long arg0, long arg1,
3027 long arg2, long arg3, long arg4,
3028 long arg5);
3029void __sanitizer_syscall_pre_impl_ppoll(long arg0, long arg1, long arg2,
3030 long arg3, long arg4);
3031void __sanitizer_syscall_post_impl_ppoll(long res, long arg0, long arg1,
3032 long arg2, long arg3, long arg4);
3033void __sanitizer_syscall_pre_impl_fanotify_init(long flags, long event_f_flags);
3034void __sanitizer_syscall_post_impl_fanotify_init(long res, long flags,
3035 long event_f_flags);
3036void __sanitizer_syscall_pre_impl_fanotify_mark(long fanotify_fd, long flags,
3037 long mask, long fd,
3038 long pathname);
3039void __sanitizer_syscall_post_impl_fanotify_mark(long res, long fanotify_fd,
3040 long flags, long mask, long fd,
3041 long pathname);
3042void __sanitizer_syscall_pre_impl_syncfs(long fd);
3043void __sanitizer_syscall_post_impl_syncfs(long res, long fd);
3044void __sanitizer_syscall_pre_impl_perf_event_open(long attr_uptr, long pid,
3045 long cpu, long group_fd,
3046 long flags);
3047void __sanitizer_syscall_post_impl_perf_event_open(long res, long attr_uptr,
3048 long pid, long cpu,
3049 long group_fd, long flags);
3050void __sanitizer_syscall_pre_impl_mmap_pgoff(long addr, long len, long prot,
3051 long flags, long fd, long pgoff);
3052void __sanitizer_syscall_post_impl_mmap_pgoff(long res, long addr, long len,
3053 long prot, long flags, long fd,
3054 long pgoff);
3055void __sanitizer_syscall_pre_impl_old_mmap(long arg);
3056void __sanitizer_syscall_post_impl_old_mmap(long res, long arg);
3057void __sanitizer_syscall_pre_impl_name_to_handle_at(long dfd, long name,
3058 long handle, long mnt_id,
3059 long flag);
3060void __sanitizer_syscall_post_impl_name_to_handle_at(long res, long dfd,
3061 long name, long handle,
3062 long mnt_id, long flag);
3063void __sanitizer_syscall_pre_impl_open_by_handle_at(long mountdirfd,
3064 long handle, long flags);
3065void __sanitizer_syscall_post_impl_open_by_handle_at(long res, long mountdirfd,
3066 long handle, long flags);
3067void __sanitizer_syscall_pre_impl_setns(long fd, long nstype);
3068void __sanitizer_syscall_post_impl_setns(long res, long fd, long nstype);
3069void __sanitizer_syscall_pre_impl_process_vm_readv(long pid, long lvec,
3070 long liovcnt, long rvec,
3071 long riovcnt, long flags);
3072void __sanitizer_syscall_post_impl_process_vm_readv(long res, long pid,
3073 long lvec, long liovcnt,
3074 long rvec, long riovcnt,
3075 long flags);
3076void __sanitizer_syscall_pre_impl_process_vm_writev(long pid, long lvec,
3077 long liovcnt, long rvec,
3078 long riovcnt, long flags);
3079void __sanitizer_syscall_post_impl_process_vm_writev(long res, long pid,
3080 long lvec, long liovcnt,
3081 long rvec, long riovcnt,
3082 long flags);
3083void __sanitizer_syscall_pre_impl_fork();
3084void __sanitizer_syscall_post_impl_fork(long res);
3085void __sanitizer_syscall_pre_impl_vfork();
3086void __sanitizer_syscall_post_impl_vfork(long res);
3087void __sanitizer_syscall_pre_impl_sigaction(long signum, long act, long oldact);
3088void __sanitizer_syscall_post_impl_sigaction(long res, long signum, long act,
3089 long oldact);
3090void __sanitizer_syscall_pre_impl_rt_sigaction(long signum, long act,
3091 long oldact, long sz);
3092void __sanitizer_syscall_post_impl_rt_sigaction(long res, long signum, long act,
3093 long oldact, long sz);
Sasha Smundak33d5ddd2020-05-04 13:37:26 -07003094void __sanitizer_syscall_pre_impl_sigaltstack(long ss, long oss);
3095void __sanitizer_syscall_post_impl_sigaltstack(long res, long ss, long oss);
Logan Chien55afb0a2018-10-15 10:42:14 +08003096#ifdef __cplusplus
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08003097} // extern "C"
Logan Chien55afb0a2018-10-15 10:42:14 +08003098#endif
3099
Pirama Arumuga Nainar494f6452021-12-02 10:42:14 -08003100#endif // SANITIZER_LINUX_SYSCALL_HOOKS_H