181418a27Smrg//===-- sanitizer_syscalls_netbsd.inc ---------------------------*- C++ -*-===//
281418a27Smrg//
37bb5462dSkamil// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
47bb5462dSkamil// See https://llvm.org/LICENSE.txt for license information.
57bb5462dSkamil// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
681418a27Smrg//
781418a27Smrg//===----------------------------------------------------------------------===//
881418a27Smrg//
981418a27Smrg// Common syscalls handlers for tools like AddressSanitizer,
1081418a27Smrg// ThreadSanitizer, MemorySanitizer, etc.
1181418a27Smrg//
1281418a27Smrg// This file should be included into the tool's interceptor file,
1381418a27Smrg// which has to define it's own macros:
1481418a27Smrg//   COMMON_SYSCALL_PRE_READ_RANGE
1581418a27Smrg//          Called in prehook for regions that will be read by the kernel and
1681418a27Smrg//          must be initialized.
1781418a27Smrg//   COMMON_SYSCALL_PRE_WRITE_RANGE
1881418a27Smrg//          Called in prehook for regions that will be written to by the kernel
1981418a27Smrg//          and must be addressable. The actual write range may be smaller than
2081418a27Smrg//          reported in the prehook. See POST_WRITE_RANGE.
2181418a27Smrg//   COMMON_SYSCALL_POST_READ_RANGE
2281418a27Smrg//          Called in posthook for regions that were read by the kernel. Does
2381418a27Smrg//          not make much sense.
2481418a27Smrg//   COMMON_SYSCALL_POST_WRITE_RANGE
2581418a27Smrg//          Called in posthook for regions that were written to by the kernel
2681418a27Smrg//          and are now initialized.
2781418a27Smrg//   COMMON_SYSCALL_ACQUIRE(addr)
2881418a27Smrg//          Acquire memory visibility from addr.
2981418a27Smrg//   COMMON_SYSCALL_RELEASE(addr)
3081418a27Smrg//          Release memory visibility to addr.
3181418a27Smrg//   COMMON_SYSCALL_FD_CLOSE(fd)
3281418a27Smrg//          Called before closing file descriptor fd.
3381418a27Smrg//   COMMON_SYSCALL_FD_ACQUIRE(fd)
3481418a27Smrg//          Acquire memory visibility from fd.
3581418a27Smrg//   COMMON_SYSCALL_FD_RELEASE(fd)
3681418a27Smrg//          Release memory visibility to fd.
3781418a27Smrg//   COMMON_SYSCALL_PRE_FORK()
3881418a27Smrg//          Called before fork syscall.
3981418a27Smrg//   COMMON_SYSCALL_POST_FORK(long long res)
4081418a27Smrg//          Called after fork syscall.
4181418a27Smrg//
4281418a27Smrg// DO NOT EDIT! THIS FILE HAS BEEN GENERATED!
4381418a27Smrg//
4481418a27Smrg// Generated with: generate_netbsd_syscalls.awk
457bb5462dSkamil// Generated date: 2020-09-10
467bb5462dSkamil// Generated from: syscalls.master,v 1.306 2020/08/14 00:53:16 riastradh Exp
4781418a27Smrg//
4881418a27Smrg//===----------------------------------------------------------------------===//
4981418a27Smrg
5081418a27Smrg#include "sanitizer_platform.h"
5181418a27Smrg#if SANITIZER_NETBSD
5281418a27Smrg
5381418a27Smrg#include "sanitizer_libc.h"
5481418a27Smrg
5581418a27Smrg#define PRE_SYSCALL(name)                                                      \
5681418a27Smrg  SANITIZER_INTERFACE_ATTRIBUTE void __sanitizer_syscall_pre_impl_##name
5781418a27Smrg#define PRE_READ(p, s) COMMON_SYSCALL_PRE_READ_RANGE(p, s)
5881418a27Smrg#define PRE_WRITE(p, s) COMMON_SYSCALL_PRE_WRITE_RANGE(p, s)
5981418a27Smrg
6081418a27Smrg#define POST_SYSCALL(name)                                                     \
6181418a27Smrg  SANITIZER_INTERFACE_ATTRIBUTE void __sanitizer_syscall_post_impl_##name
6281418a27Smrg#define POST_READ(p, s) COMMON_SYSCALL_POST_READ_RANGE(p, s)
6381418a27Smrg#define POST_WRITE(p, s) COMMON_SYSCALL_POST_WRITE_RANGE(p, s)
6481418a27Smrg
6581418a27Smrg#ifndef COMMON_SYSCALL_ACQUIRE
6681418a27Smrg#define COMMON_SYSCALL_ACQUIRE(addr) ((void)(addr))
6781418a27Smrg#endif
6881418a27Smrg
6981418a27Smrg#ifndef COMMON_SYSCALL_RELEASE
7081418a27Smrg#define COMMON_SYSCALL_RELEASE(addr) ((void)(addr))
7181418a27Smrg#endif
7281418a27Smrg
7381418a27Smrg#ifndef COMMON_SYSCALL_FD_CLOSE
7481418a27Smrg#define COMMON_SYSCALL_FD_CLOSE(fd) ((void)(fd))
7581418a27Smrg#endif
7681418a27Smrg
7781418a27Smrg#ifndef COMMON_SYSCALL_FD_ACQUIRE
7881418a27Smrg#define COMMON_SYSCALL_FD_ACQUIRE(fd) ((void)(fd))
7981418a27Smrg#endif
8081418a27Smrg
8181418a27Smrg#ifndef COMMON_SYSCALL_FD_RELEASE
8281418a27Smrg#define COMMON_SYSCALL_FD_RELEASE(fd) ((void)(fd))
8381418a27Smrg#endif
8481418a27Smrg
8581418a27Smrg#ifndef COMMON_SYSCALL_PRE_FORK
8681418a27Smrg#define COMMON_SYSCALL_PRE_FORK()                                              \
8781418a27Smrg  {}
8881418a27Smrg#endif
8981418a27Smrg
9081418a27Smrg#ifndef COMMON_SYSCALL_POST_FORK
9181418a27Smrg#define COMMON_SYSCALL_POST_FORK(res)                                          \
9281418a27Smrg  {}
9381418a27Smrg#endif
9481418a27Smrg
9581418a27Smrg// FIXME: do some kind of PRE_READ for all syscall arguments (int(s) and such).
9681418a27Smrg
9781418a27Smrgextern "C" {
9881418a27Smrg#define SYS_MAXSYSARGS 8
9981418a27SmrgPRE_SYSCALL(syscall)(long long code_, long long args_[SYS_MAXSYSARGS]) {
10081418a27Smrg  /* Nothing to do */
10181418a27Smrg}
10281418a27SmrgPOST_SYSCALL(syscall)
10381418a27Smrg(long long res, long long code_, long long args_[SYS_MAXSYSARGS]) {
10481418a27Smrg  /* Nothing to do */
10581418a27Smrg}
10681418a27SmrgPRE_SYSCALL(exit)(long long rval_) { /* Nothing to do */ }
10781418a27SmrgPOST_SYSCALL(exit)(long long res, long long rval_) { /* Nothing to do */ }
10881418a27SmrgPRE_SYSCALL(fork)(void) { COMMON_SYSCALL_PRE_FORK(); }
10981418a27SmrgPOST_SYSCALL(fork)(long long res) { COMMON_SYSCALL_POST_FORK(res); }
11081418a27SmrgPRE_SYSCALL(read)(long long fd_, void *buf_, long long nbyte_) {
11181418a27Smrg  if (buf_) {
11281418a27Smrg    PRE_WRITE(buf_, nbyte_);
11381418a27Smrg  }
11481418a27Smrg}
11581418a27SmrgPOST_SYSCALL(read)(long long res, long long fd_, void *buf_, long long nbyte_) {
11681418a27Smrg  if (res > 0) {
11781418a27Smrg    POST_WRITE(buf_, res);
11881418a27Smrg  }
11981418a27Smrg}
12081418a27SmrgPRE_SYSCALL(write)(long long fd_, void *buf_, long long nbyte_) {
12181418a27Smrg  if (buf_) {
12281418a27Smrg    PRE_READ(buf_, nbyte_);
12381418a27Smrg  }
12481418a27Smrg}
12581418a27SmrgPOST_SYSCALL(write)
12681418a27Smrg(long long res, long long fd_, void *buf_, long long nbyte_) {
12781418a27Smrg  if (res > 0) {
12881418a27Smrg    POST_READ(buf_, res);
12981418a27Smrg  }
13081418a27Smrg}
13181418a27SmrgPRE_SYSCALL(open)(void *path_, long long flags_, long long mode_) {
13281418a27Smrg  const char *path = (const char *)path_;
13381418a27Smrg  if (path) {
13481418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
13581418a27Smrg  }
13681418a27Smrg}
13781418a27SmrgPOST_SYSCALL(open)
13881418a27Smrg(long long res, void *path_, long long flags_, long long mode_) {
13981418a27Smrg  if (res > 0) {
14081418a27Smrg    const char *path = (const char *)path_;
14181418a27Smrg    if (path) {
14281418a27Smrg      POST_READ(path, __sanitizer::internal_strlen(path) + 1);
14381418a27Smrg    }
14481418a27Smrg  }
14581418a27Smrg}
14681418a27SmrgPRE_SYSCALL(close)(long long fd_) { COMMON_SYSCALL_FD_CLOSE((int)fd_); }
14781418a27SmrgPOST_SYSCALL(close)(long long res, long long fd_) { /* Nothing to do */ }
14881418a27SmrgPRE_SYSCALL(compat_50_wait4)
14981418a27Smrg(long long pid_, void *status_, long long options_, void *rusage_) {
15081418a27Smrg  /* TODO */
15181418a27Smrg}
15281418a27SmrgPOST_SYSCALL(compat_50_wait4)
15381418a27Smrg(long long res, long long pid_, void *status_, long long options_,
15481418a27Smrg  void *rusage_) {
15581418a27Smrg  /* TODO */
15681418a27Smrg}
15781418a27SmrgPRE_SYSCALL(compat_43_ocreat)(void *path_, long long mode_) { /* TODO */ }
15881418a27SmrgPOST_SYSCALL(compat_43_ocreat)(long long res, void *path_, long long mode_) {
15981418a27Smrg  /* TODO */
16081418a27Smrg}
16181418a27SmrgPRE_SYSCALL(link)(void *path_, void *link_) {
16281418a27Smrg  const char *path = (const char *)path_;
16381418a27Smrg  const char *link = (const char *)link_;
16481418a27Smrg  if (path) {
16581418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
16681418a27Smrg  }
16781418a27Smrg  if (link) {
16881418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(link) + 1);
16981418a27Smrg  }
17081418a27Smrg}
17181418a27SmrgPOST_SYSCALL(link)(long long res, void *path_, void *link_) {
17281418a27Smrg  if (res == 0) {
17381418a27Smrg    const char *path = (const char *)path_;
17481418a27Smrg    const char *link = (const char *)link_;
17581418a27Smrg    if (path) {
17681418a27Smrg      POST_READ(path, __sanitizer::internal_strlen(path) + 1);
17781418a27Smrg    }
17881418a27Smrg    if (link) {
17981418a27Smrg      POST_READ(path, __sanitizer::internal_strlen(link) + 1);
18081418a27Smrg    }
18181418a27Smrg  }
18281418a27Smrg}
18381418a27SmrgPRE_SYSCALL(unlink)(void *path_) {
18481418a27Smrg  const char *path = (const char *)path_;
18581418a27Smrg  if (path) {
18681418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
18781418a27Smrg  }
18881418a27Smrg}
18981418a27SmrgPOST_SYSCALL(unlink)(long long res, void *path_) {
19081418a27Smrg  if (res == 0) {
19181418a27Smrg    const char *path = (const char *)path_;
19281418a27Smrg    if (path) {
19381418a27Smrg      POST_READ(path, __sanitizer::internal_strlen(path) + 1);
19481418a27Smrg    }
19581418a27Smrg  }
19681418a27Smrg}
19781418a27Smrg/* syscall 11 has been skipped */
19881418a27SmrgPRE_SYSCALL(chdir)(void *path_) {
19981418a27Smrg  const char *path = (const char *)path_;
20081418a27Smrg  if (path) {
20181418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
20281418a27Smrg  }
20381418a27Smrg}
20481418a27SmrgPOST_SYSCALL(chdir)(long long res, void *path_) {
20581418a27Smrg  if (res == 0) {
20681418a27Smrg    const char *path = (const char *)path_;
20781418a27Smrg    if (path) {
20881418a27Smrg      POST_READ(path, __sanitizer::internal_strlen(path) + 1);
20981418a27Smrg    }
21081418a27Smrg  }
21181418a27Smrg}
21281418a27SmrgPRE_SYSCALL(fchdir)(long long fd_) { /* Nothing to do */ }
21381418a27SmrgPOST_SYSCALL(fchdir)(long long res, long long fd_) { /* Nothing to do */ }
21481418a27SmrgPRE_SYSCALL(compat_50_mknod)(void *path_, long long mode_, long long dev_) {
21581418a27Smrg  /* TODO */
21681418a27Smrg}
21781418a27SmrgPOST_SYSCALL(compat_50_mknod)
21881418a27Smrg(long long res, void *path_, long long mode_, long long dev_) {
21981418a27Smrg  /* TODO */
22081418a27Smrg}
22181418a27SmrgPRE_SYSCALL(chmod)(void *path_, long long mode_) {
22281418a27Smrg  const char *path = (const char *)path_;
22381418a27Smrg  if (path) {
22481418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
22581418a27Smrg  }
22681418a27Smrg}
22781418a27SmrgPOST_SYSCALL(chmod)(long long res, void *path_, long long mode_) {
22881418a27Smrg  if (res == 0) {
22981418a27Smrg    const char *path = (const char *)path_;
23081418a27Smrg    if (path) {
23181418a27Smrg      POST_READ(path, __sanitizer::internal_strlen(path) + 1);
23281418a27Smrg    }
23381418a27Smrg  }
23481418a27Smrg}
23581418a27SmrgPRE_SYSCALL(chown)(void *path_, long long uid_, long long gid_) {
23681418a27Smrg  const char *path = (const char *)path_;
23781418a27Smrg  if (path) {
23881418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
23981418a27Smrg  }
24081418a27Smrg}
24181418a27SmrgPOST_SYSCALL(chown)
24281418a27Smrg(long long res, void *path_, long long uid_, long long gid_) {
24381418a27Smrg  if (res == 0) {
24481418a27Smrg    const char *path = (const char *)path_;
24581418a27Smrg    if (path) {
24681418a27Smrg      POST_READ(path, __sanitizer::internal_strlen(path) + 1);
24781418a27Smrg    }
24881418a27Smrg  }
24981418a27Smrg}
25081418a27SmrgPRE_SYSCALL(break)(void *nsize_) { /* Nothing to do */ }
25181418a27SmrgPOST_SYSCALL(break)(long long res, void *nsize_) { /* Nothing to do */ }
25281418a27SmrgPRE_SYSCALL(compat_20_getfsstat)
25381418a27Smrg(void *buf_, long long bufsize_, long long flags_) {
25481418a27Smrg  /* TODO */
25581418a27Smrg}
25681418a27SmrgPOST_SYSCALL(compat_20_getfsstat)
25781418a27Smrg(long long res, void *buf_, long long bufsize_, long long flags_) {
25881418a27Smrg  /* TODO */
25981418a27Smrg}
26081418a27SmrgPRE_SYSCALL(compat_43_olseek)
26181418a27Smrg(long long fd_, long long offset_, long long whence_) {
26281418a27Smrg  /* TODO */
26381418a27Smrg}
26481418a27SmrgPOST_SYSCALL(compat_43_olseek)
26581418a27Smrg(long long res, long long fd_, long long offset_, long long whence_) {
26681418a27Smrg  /* TODO */
26781418a27Smrg}
26881418a27SmrgPRE_SYSCALL(getpid)(void) { /* Nothing to do */ }
26981418a27SmrgPOST_SYSCALL(getpid)(long long res) { /* Nothing to do */ }
27081418a27SmrgPRE_SYSCALL(compat_40_mount)
27181418a27Smrg(void *type_, void *path_, long long flags_, void *data_) {
27281418a27Smrg  /* TODO */
27381418a27Smrg}
27481418a27SmrgPOST_SYSCALL(compat_40_mount)
27581418a27Smrg(long long res, void *type_, void *path_, long long flags_, void *data_) {
27681418a27Smrg  /* TODO */
27781418a27Smrg}
27881418a27SmrgPRE_SYSCALL(unmount)(void *path_, long long flags_) {
27981418a27Smrg  const char *path = (const char *)path_;
28081418a27Smrg  if (path) {
28181418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
28281418a27Smrg  }
28381418a27Smrg}
28481418a27SmrgPOST_SYSCALL(unmount)(long long res, void *path_, long long flags_) {
28581418a27Smrg  if (res == 0) {
28681418a27Smrg    const char *path = (const char *)path_;
28781418a27Smrg    if (path) {
28881418a27Smrg      POST_READ(path, __sanitizer::internal_strlen(path) + 1);
28981418a27Smrg    }
29081418a27Smrg  }
29181418a27Smrg}
29281418a27SmrgPRE_SYSCALL(setuid)(long long uid_) { /* Nothing to do */ }
29381418a27SmrgPOST_SYSCALL(setuid)(long long res, long long uid_) { /* Nothing to do */ }
29481418a27SmrgPRE_SYSCALL(getuid)(void) { /* Nothing to do */ }
29581418a27SmrgPOST_SYSCALL(getuid)(long long res) { /* Nothing to do */ }
29681418a27SmrgPRE_SYSCALL(geteuid)(void) { /* Nothing to do */ }
29781418a27SmrgPOST_SYSCALL(geteuid)(long long res) { /* Nothing to do */ }
29881418a27SmrgPRE_SYSCALL(ptrace)
29981418a27Smrg(long long req_, long long pid_, void *addr_, long long data_) {
30081418a27Smrg  if (req_ == ptrace_pt_io) {
30181418a27Smrg    struct __sanitizer_ptrace_io_desc *addr =
30281418a27Smrg        (struct __sanitizer_ptrace_io_desc *)addr_;
30381418a27Smrg    PRE_READ(addr, struct_ptrace_ptrace_io_desc_struct_sz);
30481418a27Smrg    if (addr->piod_op == ptrace_piod_write_d ||
30581418a27Smrg        addr->piod_op == ptrace_piod_write_i) {
30681418a27Smrg      PRE_READ(addr->piod_addr, addr->piod_len);
30781418a27Smrg    }
30881418a27Smrg    if (addr->piod_op == ptrace_piod_read_d ||
30981418a27Smrg        addr->piod_op == ptrace_piod_read_i ||
31081418a27Smrg        addr->piod_op == ptrace_piod_read_auxv) {
31181418a27Smrg      PRE_WRITE(addr->piod_addr, addr->piod_len);
31281418a27Smrg    }
31381418a27Smrg  } else if (req_ == ptrace_pt_lwpinfo) {
31481418a27Smrg    struct __sanitizer_ptrace_lwpinfo *addr =
31581418a27Smrg        (struct __sanitizer_ptrace_lwpinfo *)addr_;
31681418a27Smrg    PRE_READ(&addr->pl_lwpid, sizeof(__sanitizer_lwpid_t));
31781418a27Smrg    PRE_WRITE(addr, struct_ptrace_ptrace_lwpinfo_struct_sz);
31881418a27Smrg  } else if (req_ == ptrace_pt_set_event_mask) {
31981418a27Smrg    PRE_READ(addr_, struct_ptrace_ptrace_event_struct_sz);
32081418a27Smrg  } else if (req_ == ptrace_pt_get_event_mask) {
32181418a27Smrg    PRE_WRITE(addr_, struct_ptrace_ptrace_event_struct_sz);
32281418a27Smrg  } else if (req_ == ptrace_pt_set_siginfo) {
32381418a27Smrg    PRE_READ(addr_, struct_ptrace_ptrace_siginfo_struct_sz);
32481418a27Smrg  } else if (req_ == ptrace_pt_get_siginfo) {
32581418a27Smrg    PRE_WRITE(addr_, struct_ptrace_ptrace_siginfo_struct_sz);
3267bb5462dSkamil  } else if (req_ == ptrace_pt_lwpstatus) {
3277bb5462dSkamil    struct __sanitizer_ptrace_lwpstatus *addr =
3287bb5462dSkamil        (struct __sanitizer_ptrace_lwpstatus *)addr_;
3297bb5462dSkamil    PRE_READ(&addr->pl_lwpid, sizeof(__sanitizer_lwpid_t));
3307bb5462dSkamil    PRE_WRITE(addr, struct_ptrace_ptrace_lwpstatus_struct_sz);
3317bb5462dSkamil  } else if (req_ == ptrace_pt_lwpnext) {
3327bb5462dSkamil    struct __sanitizer_ptrace_lwpstatus *addr =
3337bb5462dSkamil        (struct __sanitizer_ptrace_lwpstatus *)addr_;
3347bb5462dSkamil    PRE_READ(&addr->pl_lwpid, sizeof(__sanitizer_lwpid_t));
3357bb5462dSkamil    PRE_WRITE(addr, struct_ptrace_ptrace_lwpstatus_struct_sz);
33681418a27Smrg  } else if (req_ == ptrace_pt_setregs) {
33781418a27Smrg    PRE_READ(addr_, struct_ptrace_reg_struct_sz);
33881418a27Smrg  } else if (req_ == ptrace_pt_getregs) {
33981418a27Smrg    PRE_WRITE(addr_, struct_ptrace_reg_struct_sz);
34081418a27Smrg  } else if (req_ == ptrace_pt_setfpregs) {
34181418a27Smrg    PRE_READ(addr_, struct_ptrace_fpreg_struct_sz);
34281418a27Smrg  } else if (req_ == ptrace_pt_getfpregs) {
34381418a27Smrg    PRE_WRITE(addr_, struct_ptrace_fpreg_struct_sz);
34481418a27Smrg  } else if (req_ == ptrace_pt_setdbregs) {
34581418a27Smrg    PRE_READ(addr_, struct_ptrace_dbreg_struct_sz);
34681418a27Smrg  } else if (req_ == ptrace_pt_getdbregs) {
34781418a27Smrg    PRE_WRITE(addr_, struct_ptrace_dbreg_struct_sz);
34881418a27Smrg  }
34981418a27Smrg}
35081418a27SmrgPOST_SYSCALL(ptrace)
35181418a27Smrg(long long res, long long req_, long long pid_, void *addr_, long long data_) {
35281418a27Smrg  if (res == 0) {
35381418a27Smrg    if (req_ == ptrace_pt_io) {
35481418a27Smrg      struct __sanitizer_ptrace_io_desc *addr =
35581418a27Smrg          (struct __sanitizer_ptrace_io_desc *)addr_;
35681418a27Smrg      POST_READ(addr, struct_ptrace_ptrace_io_desc_struct_sz);
35781418a27Smrg      if (addr->piod_op == ptrace_piod_write_d ||
35881418a27Smrg          addr->piod_op == ptrace_piod_write_i) {
35981418a27Smrg        POST_READ(addr->piod_addr, addr->piod_len);
36081418a27Smrg      }
36181418a27Smrg      if (addr->piod_op == ptrace_piod_read_d ||
36281418a27Smrg          addr->piod_op == ptrace_piod_read_i ||
36381418a27Smrg          addr->piod_op == ptrace_piod_read_auxv) {
36481418a27Smrg        POST_WRITE(addr->piod_addr, addr->piod_len);
36581418a27Smrg      }
36681418a27Smrg    } else if (req_ == ptrace_pt_lwpinfo) {
36781418a27Smrg      struct __sanitizer_ptrace_lwpinfo *addr =
36881418a27Smrg          (struct __sanitizer_ptrace_lwpinfo *)addr_;
36981418a27Smrg      POST_READ(&addr->pl_lwpid, sizeof(__sanitizer_lwpid_t));
37081418a27Smrg      POST_WRITE(addr, struct_ptrace_ptrace_lwpinfo_struct_sz);
37181418a27Smrg    } else if (req_ == ptrace_pt_set_event_mask) {
37281418a27Smrg      POST_READ(addr_, struct_ptrace_ptrace_event_struct_sz);
37381418a27Smrg    } else if (req_ == ptrace_pt_get_event_mask) {
37481418a27Smrg      POST_WRITE(addr_, struct_ptrace_ptrace_event_struct_sz);
37581418a27Smrg    } else if (req_ == ptrace_pt_set_siginfo) {
37681418a27Smrg      POST_READ(addr_, struct_ptrace_ptrace_siginfo_struct_sz);
37781418a27Smrg    } else if (req_ == ptrace_pt_get_siginfo) {
37881418a27Smrg      POST_WRITE(addr_, struct_ptrace_ptrace_siginfo_struct_sz);
3797bb5462dSkamil    } else if (req_ == ptrace_pt_lwpstatus) {
3807bb5462dSkamil      struct __sanitizer_ptrace_lwpstatus *addr =
3817bb5462dSkamil          (struct __sanitizer_ptrace_lwpstatus *)addr_;
3827bb5462dSkamil      POST_READ(&addr->pl_lwpid, sizeof(__sanitizer_lwpid_t));
3837bb5462dSkamil      POST_WRITE(addr, struct_ptrace_ptrace_lwpstatus_struct_sz);
3847bb5462dSkamil    } else if (req_ == ptrace_pt_lwpnext) {
3857bb5462dSkamil      struct __sanitizer_ptrace_lwpstatus *addr =
3867bb5462dSkamil          (struct __sanitizer_ptrace_lwpstatus *)addr_;
3877bb5462dSkamil      POST_READ(&addr->pl_lwpid, sizeof(__sanitizer_lwpid_t));
3887bb5462dSkamil      POST_WRITE(addr, struct_ptrace_ptrace_lwpstatus_struct_sz);
38981418a27Smrg    } else if (req_ == ptrace_pt_setregs) {
39081418a27Smrg      POST_READ(addr_, struct_ptrace_reg_struct_sz);
39181418a27Smrg    } else if (req_ == ptrace_pt_getregs) {
39281418a27Smrg      POST_WRITE(addr_, struct_ptrace_reg_struct_sz);
39381418a27Smrg    } else if (req_ == ptrace_pt_setfpregs) {
39481418a27Smrg      POST_READ(addr_, struct_ptrace_fpreg_struct_sz);
39581418a27Smrg    } else if (req_ == ptrace_pt_getfpregs) {
39681418a27Smrg      POST_WRITE(addr_, struct_ptrace_fpreg_struct_sz);
39781418a27Smrg    } else if (req_ == ptrace_pt_setdbregs) {
39881418a27Smrg      POST_READ(addr_, struct_ptrace_dbreg_struct_sz);
39981418a27Smrg    } else if (req_ == ptrace_pt_getdbregs) {
40081418a27Smrg      POST_WRITE(addr_, struct_ptrace_dbreg_struct_sz);
40181418a27Smrg    }
40281418a27Smrg  }
40381418a27Smrg}
40481418a27SmrgPRE_SYSCALL(recvmsg)(long long s_, void *msg_, long long flags_) {
40581418a27Smrg  PRE_WRITE(msg_, sizeof(__sanitizer_msghdr));
40681418a27Smrg}
40781418a27SmrgPOST_SYSCALL(recvmsg)
40881418a27Smrg(long long res, long long s_, void *msg_, long long flags_) {
40981418a27Smrg  if (res > 0) {
41081418a27Smrg    POST_WRITE(msg_, sizeof(__sanitizer_msghdr));
41181418a27Smrg  }
41281418a27Smrg}
41381418a27SmrgPRE_SYSCALL(sendmsg)(long long s_, void *msg_, long long flags_) {
41481418a27Smrg  PRE_READ(msg_, sizeof(__sanitizer_msghdr));
41581418a27Smrg}
41681418a27SmrgPOST_SYSCALL(sendmsg)
41781418a27Smrg(long long res, long long s_, void *msg_, long long flags_) {
41881418a27Smrg  if (res > 0) {
41981418a27Smrg    POST_READ(msg_, sizeof(__sanitizer_msghdr));
42081418a27Smrg  }
42181418a27Smrg}
42281418a27SmrgPRE_SYSCALL(recvfrom)
42381418a27Smrg(long long s_, void *buf_, long long len_, long long flags_, void *from_,
42481418a27Smrg  void *fromlenaddr_) {
42581418a27Smrg  PRE_WRITE(buf_, len_);
42681418a27Smrg  PRE_WRITE(from_, struct_sockaddr_sz);
42781418a27Smrg  PRE_WRITE(fromlenaddr_, sizeof(__sanitizer_socklen_t));
42881418a27Smrg}
42981418a27SmrgPOST_SYSCALL(recvfrom)
43081418a27Smrg(long long res, long long s_, void *buf_, long long len_, long long flags_,
43181418a27Smrg  void *from_, void *fromlenaddr_) {
43281418a27Smrg  if (res >= 0) {
43381418a27Smrg    POST_WRITE(buf_, res);
43481418a27Smrg    POST_WRITE(from_, struct_sockaddr_sz);
43581418a27Smrg    POST_WRITE(fromlenaddr_, sizeof(__sanitizer_socklen_t));
43681418a27Smrg  }
43781418a27Smrg}
43881418a27SmrgPRE_SYSCALL(accept)(long long s_, void *name_, void *anamelen_) {
43981418a27Smrg  PRE_WRITE(name_, struct_sockaddr_sz);
44081418a27Smrg  PRE_WRITE(anamelen_, sizeof(__sanitizer_socklen_t));
44181418a27Smrg}
44281418a27SmrgPOST_SYSCALL(accept)
44381418a27Smrg(long long res, long long s_, void *name_, void *anamelen_) {
44481418a27Smrg  if (res == 0) {
44581418a27Smrg    POST_WRITE(name_, struct_sockaddr_sz);
44681418a27Smrg    POST_WRITE(anamelen_, sizeof(__sanitizer_socklen_t));
44781418a27Smrg  }
44881418a27Smrg}
44981418a27SmrgPRE_SYSCALL(getpeername)(long long fdes_, void *asa_, void *alen_) {
45081418a27Smrg  PRE_WRITE(asa_, struct_sockaddr_sz);
45181418a27Smrg  PRE_WRITE(alen_, sizeof(__sanitizer_socklen_t));
45281418a27Smrg}
45381418a27SmrgPOST_SYSCALL(getpeername)
45481418a27Smrg(long long res, long long fdes_, void *asa_, void *alen_) {
45581418a27Smrg  if (res == 0) {
45681418a27Smrg    POST_WRITE(asa_, struct_sockaddr_sz);
45781418a27Smrg    POST_WRITE(alen_, sizeof(__sanitizer_socklen_t));
45881418a27Smrg  }
45981418a27Smrg}
46081418a27SmrgPRE_SYSCALL(getsockname)(long long fdes_, void *asa_, void *alen_) {
46181418a27Smrg  PRE_WRITE(asa_, struct_sockaddr_sz);
46281418a27Smrg  PRE_WRITE(alen_, sizeof(__sanitizer_socklen_t));
46381418a27Smrg}
46481418a27SmrgPOST_SYSCALL(getsockname)
46581418a27Smrg(long long res, long long fdes_, void *asa_, void *alen_) {
46681418a27Smrg  if (res == 0) {
46781418a27Smrg    POST_WRITE(asa_, struct_sockaddr_sz);
46881418a27Smrg    POST_WRITE(alen_, sizeof(__sanitizer_socklen_t));
46981418a27Smrg  }
47081418a27Smrg}
47181418a27SmrgPRE_SYSCALL(access)(void *path_, long long flags_) {
47281418a27Smrg  const char *path = (const char *)path_;
47381418a27Smrg  if (path) {
47481418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
47581418a27Smrg  }
47681418a27Smrg}
47781418a27SmrgPOST_SYSCALL(access)(long long res, void *path_, long long flags_) {
47881418a27Smrg  if (res == 0) {
47981418a27Smrg    const char *path = (const char *)path_;
48081418a27Smrg    if (path) {
48181418a27Smrg      POST_READ(path, __sanitizer::internal_strlen(path) + 1);
48281418a27Smrg    }
48381418a27Smrg  }
48481418a27Smrg}
48581418a27SmrgPRE_SYSCALL(chflags)(void *path_, long long flags_) {
48681418a27Smrg  const char *path = (const char *)path_;
48781418a27Smrg  if (path) {
48881418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
48981418a27Smrg  }
49081418a27Smrg}
49181418a27SmrgPOST_SYSCALL(chflags)(long long res, void *path_, long long flags_) {
49281418a27Smrg  if (res == 0) {
49381418a27Smrg    const char *path = (const char *)path_;
49481418a27Smrg    if (path) {
49581418a27Smrg      POST_READ(path, __sanitizer::internal_strlen(path) + 1);
49681418a27Smrg    }
49781418a27Smrg  }
49881418a27Smrg}
49981418a27SmrgPRE_SYSCALL(fchflags)(long long fd_, long long flags_) { /* Nothing to do */ }
50081418a27SmrgPOST_SYSCALL(fchflags)(long long res, long long fd_, long long flags_) {
50181418a27Smrg  /* Nothing to do */
50281418a27Smrg}
50381418a27SmrgPRE_SYSCALL(sync)(void) { /* Nothing to do */ }
50481418a27SmrgPOST_SYSCALL(sync)(long long res) { /* Nothing to do */ }
50581418a27SmrgPRE_SYSCALL(kill)(long long pid_, long long signum_) { /* Nothing to do */ }
50681418a27SmrgPOST_SYSCALL(kill)(long long res, long long pid_, long long signum_) {
50781418a27Smrg  /* Nothing to do */
50881418a27Smrg}
50981418a27SmrgPRE_SYSCALL(compat_43_stat43)(void *path_, void *ub_) { /* TODO */ }
51081418a27SmrgPOST_SYSCALL(compat_43_stat43)(long long res, void *path_, void *ub_) {
51181418a27Smrg  /* TODO */
51281418a27Smrg}
51381418a27SmrgPRE_SYSCALL(getppid)(void) { /* Nothing to do */ }
51481418a27SmrgPOST_SYSCALL(getppid)(long long res) { /* Nothing to do */ }
51581418a27SmrgPRE_SYSCALL(compat_43_lstat43)(void *path_, void *ub_) { /* TODO */ }
51681418a27SmrgPOST_SYSCALL(compat_43_lstat43)(long long res, void *path_, void *ub_) {
51781418a27Smrg  /* TODO */
51881418a27Smrg}
51981418a27SmrgPRE_SYSCALL(dup)(long long fd_) { /* Nothing to do */ }
52081418a27SmrgPOST_SYSCALL(dup)(long long res, long long fd_) { /* Nothing to do */ }
52181418a27SmrgPRE_SYSCALL(pipe)(void) {
52281418a27Smrg  /* pipe returns two descriptors through two returned values */
52381418a27Smrg}
52481418a27SmrgPOST_SYSCALL(pipe)(long long res) {
52581418a27Smrg  /* pipe returns two descriptors through two returned values */
52681418a27Smrg}
52781418a27SmrgPRE_SYSCALL(getegid)(void) { /* Nothing to do */ }
52881418a27SmrgPOST_SYSCALL(getegid)(long long res) { /* Nothing to do */ }
52981418a27SmrgPRE_SYSCALL(profil)
53081418a27Smrg(void *samples_, long long size_, long long offset_, long long scale_) {
53181418a27Smrg  if (samples_) {
53281418a27Smrg    PRE_WRITE(samples_, size_);
53381418a27Smrg  }
53481418a27Smrg}
53581418a27SmrgPOST_SYSCALL(profil)
53681418a27Smrg(long long res, void *samples_, long long size_, long long offset_,
53781418a27Smrg  long long scale_) {
53881418a27Smrg  if (res == 0) {
53981418a27Smrg    if (samples_) {
54081418a27Smrg      POST_WRITE(samples_, size_);
54181418a27Smrg    }
54281418a27Smrg  }
54381418a27Smrg}
54481418a27SmrgPRE_SYSCALL(ktrace)
54581418a27Smrg(void *fname_, long long ops_, long long facs_, long long pid_) {
54681418a27Smrg  const char *fname = (const char *)fname_;
54781418a27Smrg  if (fname) {
54881418a27Smrg    PRE_READ(fname, __sanitizer::internal_strlen(fname) + 1);
54981418a27Smrg  }
55081418a27Smrg}
55181418a27SmrgPOST_SYSCALL(ktrace)
55281418a27Smrg(long long res, void *fname_, long long ops_, long long facs_, long long pid_) {
55381418a27Smrg  const char *fname = (const char *)fname_;
55481418a27Smrg  if (res == 0) {
55581418a27Smrg    if (fname) {
55681418a27Smrg      POST_READ(fname, __sanitizer::internal_strlen(fname) + 1);
55781418a27Smrg    }
55881418a27Smrg  }
55981418a27Smrg}
56081418a27SmrgPRE_SYSCALL(compat_13_sigaction13)(long long signum_, void *nsa_, void *osa_) {
56181418a27Smrg  /* TODO */
56281418a27Smrg}
56381418a27SmrgPOST_SYSCALL(compat_13_sigaction13)
56481418a27Smrg(long long res, long long signum_, void *nsa_, void *osa_) {
56581418a27Smrg  /* TODO */
56681418a27Smrg}
56781418a27SmrgPRE_SYSCALL(getgid)(void) { /* Nothing to do */ }
56881418a27SmrgPOST_SYSCALL(getgid)(long long res) { /* Nothing to do */ }
56981418a27SmrgPRE_SYSCALL(compat_13_sigprocmask13)(long long how_, long long mask_) {
57081418a27Smrg  /* TODO */
57181418a27Smrg}
57281418a27SmrgPOST_SYSCALL(compat_13_sigprocmask13)
57381418a27Smrg(long long res, long long how_, long long mask_) {
57481418a27Smrg  /* TODO */
57581418a27Smrg}
57681418a27SmrgPRE_SYSCALL(__getlogin)(void *namebuf_, long long namelen_) {
57781418a27Smrg  if (namebuf_) {
57881418a27Smrg    PRE_WRITE(namebuf_, namelen_);
57981418a27Smrg  }
58081418a27Smrg}
58181418a27SmrgPOST_SYSCALL(__getlogin)(long long res, void *namebuf_, long long namelen_) {
58281418a27Smrg  if (res == 0) {
58381418a27Smrg    if (namebuf_) {
58481418a27Smrg      POST_WRITE(namebuf_, namelen_);
58581418a27Smrg    }
58681418a27Smrg  }
58781418a27Smrg}
58881418a27SmrgPRE_SYSCALL(__setlogin)(void *namebuf_) {
58981418a27Smrg  const char *namebuf = (const char *)namebuf_;
59081418a27Smrg  if (namebuf) {
59181418a27Smrg    PRE_READ(namebuf, __sanitizer::internal_strlen(namebuf) + 1);
59281418a27Smrg  }
59381418a27Smrg}
59481418a27SmrgPOST_SYSCALL(__setlogin)(long long res, void *namebuf_) {
59581418a27Smrg  if (res == 0) {
59681418a27Smrg    const char *namebuf = (const char *)namebuf_;
59781418a27Smrg    if (namebuf) {
59881418a27Smrg      POST_READ(namebuf, __sanitizer::internal_strlen(namebuf) + 1);
59981418a27Smrg    }
60081418a27Smrg  }
60181418a27Smrg}
60281418a27SmrgPRE_SYSCALL(acct)(void *path_) {
60381418a27Smrg  const char *path = (const char *)path_;
60481418a27Smrg  if (path) {
60581418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
60681418a27Smrg  }
60781418a27Smrg}
60881418a27SmrgPOST_SYSCALL(acct)(long long res, void *path_) {
60981418a27Smrg  if (res == 0) {
61081418a27Smrg    const char *path = (const char *)path_;
61181418a27Smrg    if (path) {
61281418a27Smrg      POST_READ(path, __sanitizer::internal_strlen(path) + 1);
61381418a27Smrg    }
61481418a27Smrg  }
61581418a27Smrg}
61681418a27SmrgPRE_SYSCALL(compat_13_sigpending13)(void) { /* TODO */ }
61781418a27SmrgPOST_SYSCALL(compat_13_sigpending13)(long long res) { /* TODO */ }
61881418a27SmrgPRE_SYSCALL(compat_13_sigaltstack13)(void *nss_, void *oss_) { /* TODO */ }
61981418a27SmrgPOST_SYSCALL(compat_13_sigaltstack13)(long long res, void *nss_, void *oss_) {
62081418a27Smrg  /* TODO */
62181418a27Smrg}
62281418a27SmrgPRE_SYSCALL(ioctl)(long long fd_, long long com_, void *data_) {
62381418a27Smrg  /* Nothing to do */
62481418a27Smrg}
62581418a27SmrgPOST_SYSCALL(ioctl)(long long res, long long fd_, long long com_, void *data_) {
62681418a27Smrg  /* Nothing to do */
62781418a27Smrg}
62881418a27SmrgPRE_SYSCALL(compat_12_oreboot)(long long opt_) { /* TODO */ }
62981418a27SmrgPOST_SYSCALL(compat_12_oreboot)(long long res, long long opt_) { /* TODO */ }
63081418a27SmrgPRE_SYSCALL(revoke)(void *path_) {
63181418a27Smrg  const char *path = (const char *)path_;
63281418a27Smrg  if (path) {
63381418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
63481418a27Smrg  }
63581418a27Smrg}
63681418a27SmrgPOST_SYSCALL(revoke)(long long res, void *path_) {
63781418a27Smrg  if (res == 0) {
63881418a27Smrg    const char *path = (const char *)path_;
63981418a27Smrg    if (path) {
64081418a27Smrg      POST_READ(path, __sanitizer::internal_strlen(path) + 1);
64181418a27Smrg    }
64281418a27Smrg  }
64381418a27Smrg}
64481418a27SmrgPRE_SYSCALL(symlink)(void *path_, void *link_) {
64581418a27Smrg  const char *path = (const char *)path_;
64681418a27Smrg  const char *link = (const char *)link_;
64781418a27Smrg  if (path) {
64881418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
64981418a27Smrg  }
65081418a27Smrg  if (link) {
65181418a27Smrg    PRE_READ(link, __sanitizer::internal_strlen(link) + 1);
65281418a27Smrg  }
65381418a27Smrg}
65481418a27SmrgPOST_SYSCALL(symlink)(long long res, void *path_, void *link_) {
65581418a27Smrg  if (res == 0) {
65681418a27Smrg    const char *path = (const char *)path_;
65781418a27Smrg    const char *link = (const char *)link_;
65881418a27Smrg    if (path) {
65981418a27Smrg      POST_READ(path, __sanitizer::internal_strlen(path) + 1);
66081418a27Smrg    }
66181418a27Smrg    if (link) {
66281418a27Smrg      POST_READ(link, __sanitizer::internal_strlen(link) + 1);
66381418a27Smrg    }
66481418a27Smrg  }
66581418a27Smrg}
66681418a27SmrgPRE_SYSCALL(readlink)(void *path_, void *buf_, long long count_) {
66781418a27Smrg  const char *path = (const char *)path_;
66881418a27Smrg  if (path) {
66981418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
67081418a27Smrg  }
67181418a27Smrg  if (buf_) {
67281418a27Smrg    PRE_WRITE(buf_, count_);
67381418a27Smrg  }
67481418a27Smrg}
67581418a27SmrgPOST_SYSCALL(readlink)
67681418a27Smrg(long long res, void *path_, void *buf_, long long count_) {
67781418a27Smrg  if (res > 0) {
67881418a27Smrg    const char *path = (const char *)path_;
67981418a27Smrg    if (path) {
68081418a27Smrg      POST_READ(path, __sanitizer::internal_strlen(path) + 1);
68181418a27Smrg    }
68281418a27Smrg    if (buf_) {
68381418a27Smrg      PRE_WRITE(buf_, res);
68481418a27Smrg    }
68581418a27Smrg  }
68681418a27Smrg}
68781418a27SmrgPRE_SYSCALL(execve)(void *path_, void *argp_, void *envp_) {
68881418a27Smrg  const char *path = (const char *)path_;
68981418a27Smrg  char **argp = (char **)argp_;
69081418a27Smrg  char **envp = (char **)envp_;
69181418a27Smrg  if (path) {
69281418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
69381418a27Smrg  }
69481418a27Smrg  if (argp && argp[0]) {
69581418a27Smrg    char *a = argp[0];
69681418a27Smrg    while (a++) {
69781418a27Smrg      PRE_READ(a, __sanitizer::internal_strlen(a) + 1);
69881418a27Smrg    }
69981418a27Smrg  }
70081418a27Smrg  if (envp && envp[0]) {
70181418a27Smrg    char *e = envp[0];
70281418a27Smrg    while (e++) {
70381418a27Smrg      PRE_READ(e, __sanitizer::internal_strlen(e) + 1);
70481418a27Smrg    }
70581418a27Smrg  }
70681418a27Smrg}
70781418a27SmrgPOST_SYSCALL(execve)(long long res, void *path_, void *argp_, void *envp_) {
70881418a27Smrg  /* If we are here, something went wrong */
70981418a27Smrg  const char *path = (const char *)path_;
71081418a27Smrg  char **argp = (char **)argp_;
71181418a27Smrg  char **envp = (char **)envp_;
71281418a27Smrg  if (path) {
71381418a27Smrg    POST_READ(path, __sanitizer::internal_strlen(path) + 1);
71481418a27Smrg  }
71581418a27Smrg  if (argp && argp[0]) {
71681418a27Smrg    char *a = argp[0];
71781418a27Smrg    while (a++) {
71881418a27Smrg      POST_READ(a, __sanitizer::internal_strlen(a) + 1);
71981418a27Smrg    }
72081418a27Smrg  }
72181418a27Smrg  if (envp && envp[0]) {
72281418a27Smrg    char *e = envp[0];
72381418a27Smrg    while (e++) {
72481418a27Smrg      POST_READ(e, __sanitizer::internal_strlen(e) + 1);
72581418a27Smrg    }
72681418a27Smrg  }
72781418a27Smrg}
72881418a27SmrgPRE_SYSCALL(umask)(long long newmask_) { /* Nothing to do */ }
72981418a27SmrgPOST_SYSCALL(umask)(long long res, long long newmask_) { /* Nothing to do */ }
73081418a27SmrgPRE_SYSCALL(chroot)(void *path_) {
73181418a27Smrg  const char *path = (const char *)path_;
73281418a27Smrg  if (path) {
73381418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
73481418a27Smrg  }
73581418a27Smrg}
73681418a27SmrgPOST_SYSCALL(chroot)(long long res, void *path_) {
73781418a27Smrg  if (res == 0) {
73881418a27Smrg    const char *path = (const char *)path_;
73981418a27Smrg    if (path) {
74081418a27Smrg      POST_READ(path, __sanitizer::internal_strlen(path) + 1);
74181418a27Smrg    }
74281418a27Smrg  }
74381418a27Smrg}
74481418a27SmrgPRE_SYSCALL(compat_43_fstat43)(long long fd_, void *sb_) { /* TODO */ }
74581418a27SmrgPOST_SYSCALL(compat_43_fstat43)(long long res, long long fd_, void *sb_) {
74681418a27Smrg  /* TODO */
74781418a27Smrg}
74881418a27SmrgPRE_SYSCALL(compat_43_ogetkerninfo)
74981418a27Smrg(long long op_, void *where_, void *size_, long long arg_) {
75081418a27Smrg  /* TODO */
75181418a27Smrg}
75281418a27SmrgPOST_SYSCALL(compat_43_ogetkerninfo)
75381418a27Smrg(long long res, long long op_, void *where_, void *size_, long long arg_) {
75481418a27Smrg  /* TODO */
75581418a27Smrg}
75681418a27SmrgPRE_SYSCALL(compat_43_ogetpagesize)(void) { /* TODO */ }
75781418a27SmrgPOST_SYSCALL(compat_43_ogetpagesize)(long long res) { /* TODO */ }
75881418a27SmrgPRE_SYSCALL(compat_12_msync)(void *addr_, long long len_) { /* TODO */ }
75981418a27SmrgPOST_SYSCALL(compat_12_msync)(long long res, void *addr_, long long len_) {
76081418a27Smrg  /* TODO */
76181418a27Smrg}
76281418a27SmrgPRE_SYSCALL(vfork)(void) { /* Nothing to do */ }
76381418a27SmrgPOST_SYSCALL(vfork)(long long res) { /* Nothing to do */ }
76481418a27Smrg/* syscall 67 has been skipped */
76581418a27Smrg/* syscall 68 has been skipped */
76681418a27Smrg/* syscall 69 has been skipped */
76781418a27Smrg/* syscall 70 has been skipped */
76881418a27SmrgPRE_SYSCALL(compat_43_ommap)
76981418a27Smrg(void *addr_, long long len_, long long prot_, long long flags_, long long fd_,
77081418a27Smrg  long long pos_) {
77181418a27Smrg  /* TODO */
77281418a27Smrg}
77381418a27SmrgPOST_SYSCALL(compat_43_ommap)
77481418a27Smrg(long long res, void *addr_, long long len_, long long prot_, long long flags_,
77581418a27Smrg  long long fd_, long long pos_) {
77681418a27Smrg  /* TODO */
77781418a27Smrg}
77881418a27SmrgPRE_SYSCALL(vadvise)(long long anom_) { /* Nothing to do */ }
77981418a27SmrgPOST_SYSCALL(vadvise)(long long res, long long anom_) { /* Nothing to do */ }
78081418a27SmrgPRE_SYSCALL(munmap)(void *addr_, long long len_) { /* Nothing to do */ }
78181418a27SmrgPOST_SYSCALL(munmap)(long long res, void *addr_, long long len_) {
78281418a27Smrg  /* Nothing to do */
78381418a27Smrg}
78481418a27SmrgPRE_SYSCALL(mprotect)(void *addr_, long long len_, long long prot_) {
78581418a27Smrg  /* Nothing to do */
78681418a27Smrg}
78781418a27SmrgPOST_SYSCALL(mprotect)
78881418a27Smrg(long long res, void *addr_, long long len_, long long prot_) {
78981418a27Smrg  /* Nothing to do */
79081418a27Smrg}
79181418a27SmrgPRE_SYSCALL(madvise)(void *addr_, long long len_, long long behav_) {
79281418a27Smrg  /* Nothing to do */
79381418a27Smrg}
79481418a27SmrgPOST_SYSCALL(madvise)
79581418a27Smrg(long long res, void *addr_, long long len_, long long behav_) {
79681418a27Smrg  /* Nothing to do */
79781418a27Smrg}
79881418a27Smrg/* syscall 76 has been skipped */
79981418a27Smrg/* syscall 77 has been skipped */
80081418a27SmrgPRE_SYSCALL(mincore)(void *addr_, long long len_, void *vec_) {
80181418a27Smrg  /* Nothing to do */
80281418a27Smrg}
80381418a27SmrgPOST_SYSCALL(mincore)(long long res, void *addr_, long long len_, void *vec_) {
80481418a27Smrg  /* Nothing to do */
80581418a27Smrg}
80681418a27SmrgPRE_SYSCALL(getgroups)(long long gidsetsize_, void *gidset_) {
80781418a27Smrg  unsigned int *gidset = (unsigned int *)gidset_;
80881418a27Smrg  if (gidset) {
80981418a27Smrg    PRE_WRITE(gidset, sizeof(*gidset) * gidsetsize_);
81081418a27Smrg  }
81181418a27Smrg}
81281418a27SmrgPOST_SYSCALL(getgroups)(long long res, long long gidsetsize_, void *gidset_) {
81381418a27Smrg  if (res == 0) {
81481418a27Smrg    unsigned int *gidset = (unsigned int *)gidset_;
81581418a27Smrg    if (gidset) {
81681418a27Smrg      POST_WRITE(gidset, sizeof(*gidset) * gidsetsize_);
81781418a27Smrg    }
81881418a27Smrg  }
81981418a27Smrg}
82081418a27SmrgPRE_SYSCALL(setgroups)(long long gidsetsize_, void *gidset_) {
82181418a27Smrg  unsigned int *gidset = (unsigned int *)gidset_;
82281418a27Smrg  if (gidset) {
82381418a27Smrg    PRE_READ(gidset, sizeof(*gidset) * gidsetsize_);
82481418a27Smrg  }
82581418a27Smrg}
82681418a27SmrgPOST_SYSCALL(setgroups)(long long res, long long gidsetsize_, void *gidset_) {
82781418a27Smrg  if (res == 0) {
82881418a27Smrg    unsigned int *gidset = (unsigned int *)gidset_;
82981418a27Smrg    if (gidset) {
83081418a27Smrg      POST_READ(gidset, sizeof(*gidset) * gidsetsize_);
83181418a27Smrg    }
83281418a27Smrg  }
83381418a27Smrg}
83481418a27SmrgPRE_SYSCALL(getpgrp)(void) { /* Nothing to do */ }
83581418a27SmrgPOST_SYSCALL(getpgrp)(long long res) { /* Nothing to do */ }
83681418a27SmrgPRE_SYSCALL(setpgid)(long long pid_, long long pgid_) { /* Nothing to do */ }
83781418a27SmrgPOST_SYSCALL(setpgid)(long long res, long long pid_, long long pgid_) {
83881418a27Smrg  /* Nothing to do */
83981418a27Smrg}
84081418a27SmrgPRE_SYSCALL(compat_50_setitimer)(long long which_, void *itv_, void *oitv_) {
84181418a27Smrg  /* TODO */
84281418a27Smrg}
84381418a27SmrgPOST_SYSCALL(compat_50_setitimer)
84481418a27Smrg(long long res, long long which_, void *itv_, void *oitv_) {
84581418a27Smrg  /* TODO */
84681418a27Smrg}
84781418a27SmrgPRE_SYSCALL(compat_43_owait)(void) { /* TODO */ }
84881418a27SmrgPOST_SYSCALL(compat_43_owait)(long long res) { /* TODO */ }
84981418a27SmrgPRE_SYSCALL(compat_12_oswapon)(void *name_) { /* TODO */ }
85081418a27SmrgPOST_SYSCALL(compat_12_oswapon)(long long res, void *name_) { /* TODO */ }
85181418a27SmrgPRE_SYSCALL(compat_50_getitimer)(long long which_, void *itv_) { /* TODO */ }
85281418a27SmrgPOST_SYSCALL(compat_50_getitimer)(long long res, long long which_, void *itv_) {
85381418a27Smrg  /* TODO */
85481418a27Smrg}
85581418a27SmrgPRE_SYSCALL(compat_43_ogethostname)(void *hostname_, long long len_) {
85681418a27Smrg  /* TODO */
85781418a27Smrg}
85881418a27SmrgPOST_SYSCALL(compat_43_ogethostname)
85981418a27Smrg(long long res, void *hostname_, long long len_) {
86081418a27Smrg  /* TODO */
86181418a27Smrg}
86281418a27SmrgPRE_SYSCALL(compat_43_osethostname)(void *hostname_, long long len_) {
86381418a27Smrg  /* TODO */
86481418a27Smrg}
86581418a27SmrgPOST_SYSCALL(compat_43_osethostname)
86681418a27Smrg(long long res, void *hostname_, long long len_) {
86781418a27Smrg  /* TODO */
86881418a27Smrg}
86981418a27SmrgPRE_SYSCALL(compat_43_ogetdtablesize)(void) { /* TODO */ }
87081418a27SmrgPOST_SYSCALL(compat_43_ogetdtablesize)(long long res) { /* TODO */ }
87181418a27SmrgPRE_SYSCALL(dup2)(long long from_, long long to_) { /* Nothing to do */ }
87281418a27SmrgPOST_SYSCALL(dup2)(long long res, long long from_, long long to_) {
87381418a27Smrg  /* Nothing to do */
87481418a27Smrg}
8757bb5462dSkamilPRE_SYSCALL(getrandom)(void *buf_, long long buflen_, long long flags_) {
8767bb5462dSkamil  /* TODO */
8777bb5462dSkamil}
8787bb5462dSkamilPOST_SYSCALL(getrandom)
8797bb5462dSkamil(long long res, void *buf_, long long buflen_, long long flags_) {
8807bb5462dSkamil  /* TODO */
8817bb5462dSkamil}
88281418a27SmrgPRE_SYSCALL(fcntl)(long long fd_, long long cmd_, void *arg_) {
88381418a27Smrg  /* Nothing to do */
88481418a27Smrg}
88581418a27SmrgPOST_SYSCALL(fcntl)(long long res, long long fd_, long long cmd_, void *arg_) {
88681418a27Smrg  /* Nothing to do */
88781418a27Smrg}
88881418a27SmrgPRE_SYSCALL(compat_50_select)
88981418a27Smrg(long long nd_, void *in_, void *ou_, void *ex_, void *tv_) {
89081418a27Smrg  /* TODO */
89181418a27Smrg}
89281418a27SmrgPOST_SYSCALL(compat_50_select)
89381418a27Smrg(long long res, long long nd_, void *in_, void *ou_, void *ex_, void *tv_) {
89481418a27Smrg  /* TODO */
89581418a27Smrg}
89681418a27Smrg/* syscall 94 has been skipped */
89781418a27SmrgPRE_SYSCALL(fsync)(long long fd_) { /* Nothing to do */ }
89881418a27SmrgPOST_SYSCALL(fsync)(long long res, long long fd_) { /* Nothing to do */ }
89981418a27SmrgPRE_SYSCALL(setpriority)(long long which_, long long who_, long long prio_) {
90081418a27Smrg  /* Nothing to do */
90181418a27Smrg}
90281418a27SmrgPOST_SYSCALL(setpriority)
90381418a27Smrg(long long res, long long which_, long long who_, long long prio_) {
90481418a27Smrg  /* Nothing to do */
90581418a27Smrg}
90681418a27SmrgPRE_SYSCALL(compat_30_socket)
90781418a27Smrg(long long domain_, long long type_, long long protocol_) {
90881418a27Smrg  /* TODO */
90981418a27Smrg}
91081418a27SmrgPOST_SYSCALL(compat_30_socket)
91181418a27Smrg(long long res, long long domain_, long long type_, long long protocol_) {
91281418a27Smrg  /* TODO */
91381418a27Smrg}
91481418a27SmrgPRE_SYSCALL(connect)(long long s_, void *name_, long long namelen_) {
91581418a27Smrg  PRE_READ(name_, namelen_);
91681418a27Smrg}
91781418a27SmrgPOST_SYSCALL(connect)
91881418a27Smrg(long long res, long long s_, void *name_, long long namelen_) {
91981418a27Smrg  if (res == 0) {
92081418a27Smrg    POST_READ(name_, namelen_);
92181418a27Smrg  }
92281418a27Smrg}
92381418a27SmrgPRE_SYSCALL(compat_43_oaccept)(long long s_, void *name_, void *anamelen_) {
92481418a27Smrg  /* TODO */
92581418a27Smrg}
92681418a27SmrgPOST_SYSCALL(compat_43_oaccept)
92781418a27Smrg(long long res, long long s_, void *name_, void *anamelen_) {
92881418a27Smrg  /* TODO */
92981418a27Smrg}
93081418a27SmrgPRE_SYSCALL(getpriority)(long long which_, long long who_) {
93181418a27Smrg  /* Nothing to do */
93281418a27Smrg}
93381418a27SmrgPOST_SYSCALL(getpriority)(long long res, long long which_, long long who_) {
93481418a27Smrg  /* Nothing to do */
93581418a27Smrg}
93681418a27SmrgPRE_SYSCALL(compat_43_osend)
93781418a27Smrg(long long s_, void *buf_, long long len_, long long flags_) {
93881418a27Smrg  /* TODO */
93981418a27Smrg}
94081418a27SmrgPOST_SYSCALL(compat_43_osend)
94181418a27Smrg(long long res, long long s_, void *buf_, long long len_, long long flags_) {
94281418a27Smrg  /* TODO */
94381418a27Smrg}
94481418a27SmrgPRE_SYSCALL(compat_43_orecv)
94581418a27Smrg(long long s_, void *buf_, long long len_, long long flags_) {
94681418a27Smrg  /* TODO */
94781418a27Smrg}
94881418a27SmrgPOST_SYSCALL(compat_43_orecv)
94981418a27Smrg(long long res, long long s_, void *buf_, long long len_, long long flags_) {
95081418a27Smrg  /* TODO */
95181418a27Smrg}
95281418a27SmrgPRE_SYSCALL(compat_13_sigreturn13)(void *sigcntxp_) { /* TODO */ }
95381418a27SmrgPOST_SYSCALL(compat_13_sigreturn13)(long long res, void *sigcntxp_) {
95481418a27Smrg  /* TODO */
95581418a27Smrg}
95681418a27SmrgPRE_SYSCALL(bind)(long long s_, void *name_, long long namelen_) {
95781418a27Smrg  PRE_READ(name_, namelen_);
95881418a27Smrg}
95981418a27SmrgPOST_SYSCALL(bind)
96081418a27Smrg(long long res, long long s_, void *name_, long long namelen_) {
96181418a27Smrg  if (res == 0) {
96281418a27Smrg    PRE_READ(name_, namelen_);
96381418a27Smrg  }
96481418a27Smrg}
96581418a27SmrgPRE_SYSCALL(setsockopt)
96681418a27Smrg(long long s_, long long level_, long long name_, void *val_,
96781418a27Smrg  long long valsize_) {
96881418a27Smrg  if (val_) {
96981418a27Smrg    PRE_READ(val_, valsize_);
97081418a27Smrg  }
97181418a27Smrg}
97281418a27SmrgPOST_SYSCALL(setsockopt)
97381418a27Smrg(long long res, long long s_, long long level_, long long name_, void *val_,
97481418a27Smrg  long long valsize_) {
97581418a27Smrg  if (res == 0) {
97681418a27Smrg    if (val_) {
97781418a27Smrg      POST_READ(val_, valsize_);
97881418a27Smrg    }
97981418a27Smrg  }
98081418a27Smrg}
98181418a27SmrgPRE_SYSCALL(listen)(long long s_, long long backlog_) { /* Nothing to do */ }
98281418a27SmrgPOST_SYSCALL(listen)(long long res, long long s_, long long backlog_) {
98381418a27Smrg  /* Nothing to do */
98481418a27Smrg}
98581418a27Smrg/* syscall 107 has been skipped */
98681418a27SmrgPRE_SYSCALL(compat_43_osigvec)(long long signum_, void *nsv_, void *osv_) {
98781418a27Smrg  /* TODO */
98881418a27Smrg}
98981418a27SmrgPOST_SYSCALL(compat_43_osigvec)
99081418a27Smrg(long long res, long long signum_, void *nsv_, void *osv_) {
99181418a27Smrg  /* TODO */
99281418a27Smrg}
99381418a27SmrgPRE_SYSCALL(compat_43_osigblock)(long long mask_) { /* TODO */ }
99481418a27SmrgPOST_SYSCALL(compat_43_osigblock)(long long res, long long mask_) { /* TODO */ }
99581418a27SmrgPRE_SYSCALL(compat_43_osigsetmask)(long long mask_) { /* TODO */ }
99681418a27SmrgPOST_SYSCALL(compat_43_osigsetmask)(long long res, long long mask_) {
99781418a27Smrg  /* TODO */
99881418a27Smrg}
99981418a27SmrgPRE_SYSCALL(compat_13_sigsuspend13)(long long mask_) { /* TODO */ }
100081418a27SmrgPOST_SYSCALL(compat_13_sigsuspend13)(long long res, long long mask_) {
100181418a27Smrg  /* TODO */
100281418a27Smrg}
100381418a27SmrgPRE_SYSCALL(compat_43_osigstack)(void *nss_, void *oss_) { /* TODO */ }
100481418a27SmrgPOST_SYSCALL(compat_43_osigstack)(long long res, void *nss_, void *oss_) {
100581418a27Smrg  /* TODO */
100681418a27Smrg}
100781418a27SmrgPRE_SYSCALL(compat_43_orecvmsg)(long long s_, void *msg_, long long flags_) {
100881418a27Smrg  /* TODO */
100981418a27Smrg}
101081418a27SmrgPOST_SYSCALL(compat_43_orecvmsg)
101181418a27Smrg(long long res, long long s_, void *msg_, long long flags_) {
101281418a27Smrg  /* TODO */
101381418a27Smrg}
101481418a27SmrgPRE_SYSCALL(compat_43_osendmsg)(long long s_, void *msg_, long long flags_) {
101581418a27Smrg  /* TODO */
101681418a27Smrg}
101781418a27SmrgPOST_SYSCALL(compat_43_osendmsg)
101881418a27Smrg(long long res, long long s_, void *msg_, long long flags_) {
101981418a27Smrg  /* TODO */
102081418a27Smrg}
102181418a27Smrg/* syscall 115 has been skipped */
102281418a27SmrgPRE_SYSCALL(compat_50_gettimeofday)(void *tp_, void *tzp_) { /* TODO */ }
102381418a27SmrgPOST_SYSCALL(compat_50_gettimeofday)(long long res, void *tp_, void *tzp_) {
102481418a27Smrg  /* TODO */
102581418a27Smrg}
102681418a27SmrgPRE_SYSCALL(compat_50_getrusage)(long long who_, void *rusage_) { /* TODO */ }
102781418a27SmrgPOST_SYSCALL(compat_50_getrusage)
102881418a27Smrg(long long res, long long who_, void *rusage_) {
102981418a27Smrg  /* TODO */
103081418a27Smrg}
103181418a27SmrgPRE_SYSCALL(getsockopt)
103281418a27Smrg(long long s_, long long level_, long long name_, void *val_, void *avalsize_) {
103381418a27Smrg  /* TODO */
103481418a27Smrg}
103581418a27SmrgPOST_SYSCALL(getsockopt)
103681418a27Smrg(long long res, long long s_, long long level_, long long name_, void *val_,
103781418a27Smrg  void *avalsize_) {
103881418a27Smrg  /* TODO */
103981418a27Smrg}
104081418a27Smrg/* syscall 119 has been skipped */
104181418a27SmrgPRE_SYSCALL(readv)(long long fd_, void *iovp_, long long iovcnt_) {
104281418a27Smrg  struct __sanitizer_iovec *iovp = (struct __sanitizer_iovec *)iovp_;
104381418a27Smrg  int i;
104481418a27Smrg  if (iovp) {
104581418a27Smrg    PRE_READ(iovp, sizeof(struct __sanitizer_iovec) * iovcnt_);
104681418a27Smrg    for (i = 0; i < iovcnt_; i++) {
104781418a27Smrg      PRE_WRITE(iovp[i].iov_base, iovp[i].iov_len);
104881418a27Smrg    }
104981418a27Smrg  }
105081418a27Smrg}
105181418a27SmrgPOST_SYSCALL(readv)
105281418a27Smrg(long long res, long long fd_, void *iovp_, long long iovcnt_) {
105381418a27Smrg  struct __sanitizer_iovec *iovp = (struct __sanitizer_iovec *)iovp_;
105481418a27Smrg  int i;
105581418a27Smrg  uptr m, n = res;
105681418a27Smrg  if (res > 0) {
105781418a27Smrg    if (iovp) {
105881418a27Smrg      POST_READ(iovp, sizeof(struct __sanitizer_iovec) * iovcnt_);
105981418a27Smrg      for (i = 0; i < iovcnt_ && n > 0; i++) {
106081418a27Smrg        m = n > iovp[i].iov_len ? iovp[i].iov_len : n;
106181418a27Smrg        POST_WRITE(iovp[i].iov_base, m);
106281418a27Smrg        n -= m;
106381418a27Smrg      }
106481418a27Smrg    }
106581418a27Smrg  }
106681418a27Smrg}
106781418a27SmrgPRE_SYSCALL(writev)(long long fd_, void *iovp_, long long iovcnt_) {
106881418a27Smrg  struct __sanitizer_iovec *iovp = (struct __sanitizer_iovec *)iovp_;
106981418a27Smrg  int i;
107081418a27Smrg  if (iovp) {
107181418a27Smrg    PRE_READ(iovp, sizeof(struct __sanitizer_iovec) * iovcnt_);
107281418a27Smrg    for (i = 0; i < iovcnt_; i++) {
107381418a27Smrg      PRE_READ(iovp[i].iov_base, iovp[i].iov_len);
107481418a27Smrg    }
107581418a27Smrg  }
107681418a27Smrg}
107781418a27SmrgPOST_SYSCALL(writev)
107881418a27Smrg(long long res, long long fd_, void *iovp_, long long iovcnt_) {
107981418a27Smrg  struct __sanitizer_iovec *iovp = (struct __sanitizer_iovec *)iovp_;
108081418a27Smrg  int i;
108181418a27Smrg  uptr m, n = res;
108281418a27Smrg  if (res > 0) {
108381418a27Smrg    if (iovp) {
108481418a27Smrg      POST_READ(iovp, sizeof(struct __sanitizer_iovec) * iovcnt_);
108581418a27Smrg      for (i = 0; i < iovcnt_ && n > 0; i++) {
108681418a27Smrg        m = n > iovp[i].iov_len ? iovp[i].iov_len : n;
108781418a27Smrg        POST_READ(iovp[i].iov_base, m);
108881418a27Smrg        n -= m;
108981418a27Smrg      }
109081418a27Smrg    }
109181418a27Smrg  }
109281418a27Smrg}
109381418a27SmrgPRE_SYSCALL(compat_50_settimeofday)(void *tv_, void *tzp_) { /* TODO */ }
109481418a27SmrgPOST_SYSCALL(compat_50_settimeofday)(long long res, void *tv_, void *tzp_) {
109581418a27Smrg  /* TODO */
109681418a27Smrg}
109781418a27SmrgPRE_SYSCALL(fchown)(long long fd_, long long uid_, long long gid_) {
109881418a27Smrg  /* Nothing to do */
109981418a27Smrg}
110081418a27SmrgPOST_SYSCALL(fchown)
110181418a27Smrg(long long res, long long fd_, long long uid_, long long gid_) {
110281418a27Smrg  /* Nothing to do */
110381418a27Smrg}
110481418a27SmrgPRE_SYSCALL(fchmod)(long long fd_, long long mode_) { /* Nothing to do */ }
110581418a27SmrgPOST_SYSCALL(fchmod)(long long res, long long fd_, long long mode_) {
110681418a27Smrg  /* Nothing to do */
110781418a27Smrg}
110881418a27SmrgPRE_SYSCALL(compat_43_orecvfrom)
110981418a27Smrg(long long s_, void *buf_, long long len_, long long flags_, void *from_,
111081418a27Smrg  void *fromlenaddr_) {
111181418a27Smrg  /* TODO */
111281418a27Smrg}
111381418a27SmrgPOST_SYSCALL(compat_43_orecvfrom)
111481418a27Smrg(long long res, long long s_, void *buf_, long long len_, long long flags_,
111581418a27Smrg  void *from_, void *fromlenaddr_) {
111681418a27Smrg  /* TODO */
111781418a27Smrg}
111881418a27SmrgPRE_SYSCALL(setreuid)(long long ruid_, long long euid_) { /* Nothing to do */ }
111981418a27SmrgPOST_SYSCALL(setreuid)(long long res, long long ruid_, long long euid_) {
112081418a27Smrg  /* Nothing to do */
112181418a27Smrg}
112281418a27SmrgPRE_SYSCALL(setregid)(long long rgid_, long long egid_) { /* Nothing to do */ }
112381418a27SmrgPOST_SYSCALL(setregid)(long long res, long long rgid_, long long egid_) {
112481418a27Smrg  /* Nothing to do */
112581418a27Smrg}
112681418a27SmrgPRE_SYSCALL(rename)(void *from_, void *to_) {
112781418a27Smrg  const char *from = (const char *)from_;
112881418a27Smrg  const char *to = (const char *)to_;
112981418a27Smrg  if (from) {
113081418a27Smrg    PRE_READ(from, __sanitizer::internal_strlen(from) + 1);
113181418a27Smrg  }
113281418a27Smrg  if (to) {
113381418a27Smrg    PRE_READ(to, __sanitizer::internal_strlen(to) + 1);
113481418a27Smrg  }
113581418a27Smrg}
113681418a27SmrgPOST_SYSCALL(rename)(long long res, void *from_, void *to_) {
113781418a27Smrg  if (res == 0) {
113881418a27Smrg    const char *from = (const char *)from_;
113981418a27Smrg    const char *to = (const char *)to_;
114081418a27Smrg    if (from) {
114181418a27Smrg      POST_READ(from, __sanitizer::internal_strlen(from) + 1);
114281418a27Smrg    }
114381418a27Smrg    if (to) {
114481418a27Smrg      POST_READ(to, __sanitizer::internal_strlen(to) + 1);
114581418a27Smrg    }
114681418a27Smrg  }
114781418a27Smrg}
114881418a27SmrgPRE_SYSCALL(compat_43_otruncate)(void *path_, long long length_) { /* TODO */ }
114981418a27SmrgPOST_SYSCALL(compat_43_otruncate)
115081418a27Smrg(long long res, void *path_, long long length_) {
115181418a27Smrg  /* TODO */
115281418a27Smrg}
115381418a27SmrgPRE_SYSCALL(compat_43_oftruncate)(long long fd_, long long length_) {
115481418a27Smrg  /* TODO */
115581418a27Smrg}
115681418a27SmrgPOST_SYSCALL(compat_43_oftruncate)
115781418a27Smrg(long long res, long long fd_, long long length_) {
115881418a27Smrg  /* TODO */
115981418a27Smrg}
116081418a27SmrgPRE_SYSCALL(flock)(long long fd_, long long how_) { /* Nothing to do */ }
116181418a27SmrgPOST_SYSCALL(flock)(long long res, long long fd_, long long how_) {
116281418a27Smrg  /* Nothing to do */
116381418a27Smrg}
116481418a27SmrgPRE_SYSCALL(mkfifo)(void *path_, long long mode_) {
116581418a27Smrg  const char *path = (const char *)path_;
116681418a27Smrg  if (path) {
116781418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
116881418a27Smrg  }
116981418a27Smrg}
117081418a27SmrgPOST_SYSCALL(mkfifo)(long long res, void *path_, long long mode_) {
117181418a27Smrg  if (res == 0) {
117281418a27Smrg    const char *path = (const char *)path_;
117381418a27Smrg    if (path) {
117481418a27Smrg      POST_READ(path, __sanitizer::internal_strlen(path) + 1);
117581418a27Smrg    }
117681418a27Smrg  }
117781418a27Smrg}
117881418a27SmrgPRE_SYSCALL(sendto)
117981418a27Smrg(long long s_, void *buf_, long long len_, long long flags_, void *to_,
118081418a27Smrg  long long tolen_) {
118181418a27Smrg  PRE_READ(buf_, len_);
118281418a27Smrg  PRE_READ(to_, tolen_);
118381418a27Smrg}
118481418a27SmrgPOST_SYSCALL(sendto)
118581418a27Smrg(long long res, long long s_, void *buf_, long long len_, long long flags_,
118681418a27Smrg  void *to_, long long tolen_) {
118781418a27Smrg  if (res >= 0) {
118881418a27Smrg    POST_READ(buf_, len_);
118981418a27Smrg    POST_READ(to_, tolen_);
119081418a27Smrg  }
119181418a27Smrg}
119281418a27SmrgPRE_SYSCALL(shutdown)(long long s_, long long how_) { /* Nothing to do */ }
119381418a27SmrgPOST_SYSCALL(shutdown)(long long res, long long s_, long long how_) {
119481418a27Smrg  /* Nothing to do */
119581418a27Smrg}
119681418a27SmrgPRE_SYSCALL(socketpair)
119781418a27Smrg(long long domain_, long long type_, long long protocol_, void *rsv_) {
119881418a27Smrg  PRE_WRITE(rsv_, 2 * sizeof(int));
119981418a27Smrg}
120081418a27SmrgPOST_SYSCALL(socketpair)
120181418a27Smrg(long long res, long long domain_, long long type_, long long protocol_,
120281418a27Smrg  void *rsv_) {
120381418a27Smrg  if (res == 0) {
120481418a27Smrg    POST_WRITE(rsv_, 2 * sizeof(int));
120581418a27Smrg  }
120681418a27Smrg}
120781418a27SmrgPRE_SYSCALL(mkdir)(void *path_, long long mode_) {
120881418a27Smrg  const char *path = (const char *)path_;
120981418a27Smrg  if (path) {
121081418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
121181418a27Smrg  }
121281418a27Smrg}
121381418a27SmrgPOST_SYSCALL(mkdir)(long long res, void *path_, long long mode_) {
121481418a27Smrg  if (res == 0) {
121581418a27Smrg    const char *path = (const char *)path_;
121681418a27Smrg    if (path) {
121781418a27Smrg      POST_READ(path, __sanitizer::internal_strlen(path) + 1);
121881418a27Smrg    }
121981418a27Smrg  }
122081418a27Smrg}
122181418a27SmrgPRE_SYSCALL(rmdir)(void *path_) {
122281418a27Smrg  const char *path = (const char *)path_;
122381418a27Smrg  if (path) {
122481418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
122581418a27Smrg  }
122681418a27Smrg}
122781418a27SmrgPOST_SYSCALL(rmdir)(long long res, void *path_) {
122881418a27Smrg  if (res == 0) {
122981418a27Smrg    const char *path = (const char *)path_;
123081418a27Smrg    if (path) {
123181418a27Smrg      POST_READ(path, __sanitizer::internal_strlen(path) + 1);
123281418a27Smrg    }
123381418a27Smrg  }
123481418a27Smrg}
123581418a27SmrgPRE_SYSCALL(compat_50_utimes)(void *path_, void *tptr_) { /* TODO */ }
123681418a27SmrgPOST_SYSCALL(compat_50_utimes)(long long res, void *path_, void *tptr_) {
123781418a27Smrg  /* TODO */
123881418a27Smrg}
123981418a27Smrg/* syscall 139 has been skipped */
124081418a27SmrgPRE_SYSCALL(compat_50_adjtime)(void *delta_, void *olddelta_) { /* TODO */ }
124181418a27SmrgPOST_SYSCALL(compat_50_adjtime)(long long res, void *delta_, void *olddelta_) {
124281418a27Smrg  /* TODO */
124381418a27Smrg}
124481418a27SmrgPRE_SYSCALL(compat_43_ogetpeername)(long long fdes_, void *asa_, void *alen_) {
124581418a27Smrg  /* TODO */
124681418a27Smrg}
124781418a27SmrgPOST_SYSCALL(compat_43_ogetpeername)
124881418a27Smrg(long long res, long long fdes_, void *asa_, void *alen_) {
124981418a27Smrg  /* TODO */
125081418a27Smrg}
125181418a27SmrgPRE_SYSCALL(compat_43_ogethostid)(void) { /* TODO */ }
125281418a27SmrgPOST_SYSCALL(compat_43_ogethostid)(long long res) { /* TODO */ }
125381418a27SmrgPRE_SYSCALL(compat_43_osethostid)(long long hostid_) { /* TODO */ }
125481418a27SmrgPOST_SYSCALL(compat_43_osethostid)(long long res, long long hostid_) {
125581418a27Smrg  /* TODO */
125681418a27Smrg}
125781418a27SmrgPRE_SYSCALL(compat_43_ogetrlimit)(long long which_, void *rlp_) { /* TODO */ }
125881418a27SmrgPOST_SYSCALL(compat_43_ogetrlimit)
125981418a27Smrg(long long res, long long which_, void *rlp_) {
126081418a27Smrg  /* TODO */
126181418a27Smrg}
126281418a27SmrgPRE_SYSCALL(compat_43_osetrlimit)(long long which_, void *rlp_) { /* TODO */ }
126381418a27SmrgPOST_SYSCALL(compat_43_osetrlimit)
126481418a27Smrg(long long res, long long which_, void *rlp_) {
126581418a27Smrg  /* TODO */
126681418a27Smrg}
126781418a27SmrgPRE_SYSCALL(compat_43_okillpg)(long long pgid_, long long signum_) {
126881418a27Smrg  /* TODO */
126981418a27Smrg}
127081418a27SmrgPOST_SYSCALL(compat_43_okillpg)
127181418a27Smrg(long long res, long long pgid_, long long signum_) {
127281418a27Smrg  /* TODO */
127381418a27Smrg}
127481418a27SmrgPRE_SYSCALL(setsid)(void) { /* Nothing to do */ }
127581418a27SmrgPOST_SYSCALL(setsid)(long long res) { /* Nothing to do */ }
127681418a27SmrgPRE_SYSCALL(compat_50_quotactl)
127781418a27Smrg(void *path_, long long cmd_, long long uid_, void *arg_) {
127881418a27Smrg  /* TODO */
127981418a27Smrg}
128081418a27SmrgPOST_SYSCALL(compat_50_quotactl)
128181418a27Smrg(long long res, void *path_, long long cmd_, long long uid_, void *arg_) {
128281418a27Smrg  /* TODO */
128381418a27Smrg}
128481418a27SmrgPRE_SYSCALL(compat_43_oquota)(void) { /* TODO */ }
128581418a27SmrgPOST_SYSCALL(compat_43_oquota)(long long res) { /* TODO */ }
128681418a27SmrgPRE_SYSCALL(compat_43_ogetsockname)(long long fdec_, void *asa_, void *alen_) {
128781418a27Smrg  /* TODO */
128881418a27Smrg}
128981418a27SmrgPOST_SYSCALL(compat_43_ogetsockname)
129081418a27Smrg(long long res, long long fdec_, void *asa_, void *alen_) {
129181418a27Smrg  /* TODO */
129281418a27Smrg}
129381418a27Smrg/* syscall 151 has been skipped */
129481418a27Smrg/* syscall 152 has been skipped */
129581418a27Smrg/* syscall 153 has been skipped */
129681418a27Smrg/* syscall 154 has been skipped */
129781418a27SmrgPRE_SYSCALL(nfssvc)(long long flag_, void *argp_) { /* Nothing to do */ }
129881418a27SmrgPOST_SYSCALL(nfssvc)(long long res, long long flag_, void *argp_) {
129981418a27Smrg  /* Nothing to do */
130081418a27Smrg}
130181418a27SmrgPRE_SYSCALL(compat_43_ogetdirentries)
130281418a27Smrg(long long fd_, void *buf_, long long count_, void *basep_) {
130381418a27Smrg  /* TODO */
130481418a27Smrg}
130581418a27SmrgPOST_SYSCALL(compat_43_ogetdirentries)
130681418a27Smrg(long long res, long long fd_, void *buf_, long long count_, void *basep_) {
130781418a27Smrg  /* TODO */
130881418a27Smrg}
130981418a27SmrgPRE_SYSCALL(compat_20_statfs)(void *path_, void *buf_) { /* TODO */ }
131081418a27SmrgPOST_SYSCALL(compat_20_statfs)(long long res, void *path_, void *buf_) {
131181418a27Smrg  /* TODO */
131281418a27Smrg}
131381418a27SmrgPRE_SYSCALL(compat_20_fstatfs)(long long fd_, void *buf_) { /* TODO */ }
131481418a27SmrgPOST_SYSCALL(compat_20_fstatfs)(long long res, long long fd_, void *buf_) {
131581418a27Smrg  /* TODO */
131681418a27Smrg}
131781418a27Smrg/* syscall 159 has been skipped */
131881418a27Smrg/* syscall 160 has been skipped */
131981418a27SmrgPRE_SYSCALL(compat_30_getfh)(void *fname_, void *fhp_) { /* TODO */ }
132081418a27SmrgPOST_SYSCALL(compat_30_getfh)(long long res, void *fname_, void *fhp_) {
132181418a27Smrg  /* TODO */
132281418a27Smrg}
132381418a27SmrgPRE_SYSCALL(compat_09_ogetdomainname)(void *domainname_, long long len_) {
132481418a27Smrg  /* TODO */
132581418a27Smrg}
132681418a27SmrgPOST_SYSCALL(compat_09_ogetdomainname)
132781418a27Smrg(long long res, void *domainname_, long long len_) {
132881418a27Smrg  /* TODO */
132981418a27Smrg}
133081418a27SmrgPRE_SYSCALL(compat_09_osetdomainname)(void *domainname_, long long len_) {
133181418a27Smrg  /* TODO */
133281418a27Smrg}
133381418a27SmrgPOST_SYSCALL(compat_09_osetdomainname)
133481418a27Smrg(long long res, void *domainname_, long long len_) {
133581418a27Smrg  /* TODO */
133681418a27Smrg}
133781418a27SmrgPRE_SYSCALL(compat_09_ouname)(void *name_) { /* TODO */ }
133881418a27SmrgPOST_SYSCALL(compat_09_ouname)(long long res, void *name_) { /* TODO */ }
133981418a27SmrgPRE_SYSCALL(sysarch)(long long op_, void *parms_) { /* TODO */ }
134081418a27SmrgPOST_SYSCALL(sysarch)(long long res, long long op_, void *parms_) { /* TODO */ }
13417bb5462dSkamilPRE_SYSCALL(__futex)
13427bb5462dSkamil(void *uaddr_, long long op_, long long val_, void *timeout_, void *uaddr2_,
13437bb5462dSkamil  long long val2_, long long val3_) {
13447bb5462dSkamil  /* TODO */
13457bb5462dSkamil}
13467bb5462dSkamilPOST_SYSCALL(__futex)
13477bb5462dSkamil(long long res, void *uaddr_, long long op_, long long val_, void *timeout_,
13487bb5462dSkamil  void *uaddr2_, long long val2_, long long val3_) {
13497bb5462dSkamil  /* TODO */
13507bb5462dSkamil}
13517bb5462dSkamilPRE_SYSCALL(__futex_set_robust_list)(void *head_, long long len_) { /* TODO */ }
13527bb5462dSkamilPOST_SYSCALL(__futex_set_robust_list)
13537bb5462dSkamil(long long res, void *head_, long long len_) {
13547bb5462dSkamil  /* TODO */
13557bb5462dSkamil}
13567bb5462dSkamilPRE_SYSCALL(__futex_get_robust_list)
13577bb5462dSkamil(long long lwpid_, void **headp_, void *lenp_) {
13587bb5462dSkamil  /* TODO */
13597bb5462dSkamil}
13607bb5462dSkamilPOST_SYSCALL(__futex_get_robust_list)
13617bb5462dSkamil(long long res, long long lwpid_, void **headp_, void *lenp_) {
13627bb5462dSkamil  /* TODO */
13637bb5462dSkamil}
136481418a27Smrg#if !defined(_LP64)
136581418a27SmrgPRE_SYSCALL(compat_10_osemsys)
136681418a27Smrg(long long which_, long long a2_, long long a3_, long long a4_, long long a5_) {
136781418a27Smrg  /* TODO */
136881418a27Smrg}
136981418a27SmrgPOST_SYSCALL(compat_10_osemsys)
137081418a27Smrg(long long res, long long which_, long long a2_, long long a3_, long long a4_,
137181418a27Smrg  long long a5_) {
137281418a27Smrg  /* TODO */
137381418a27Smrg}
137481418a27Smrg#else
137581418a27Smrg/* syscall 169 has been skipped */
137681418a27Smrg#endif
137781418a27Smrg#if !defined(_LP64)
137881418a27SmrgPRE_SYSCALL(compat_10_omsgsys)
137981418a27Smrg(long long which_, long long a2_, long long a3_, long long a4_, long long a5_,
138081418a27Smrg  long long a6_) {
138181418a27Smrg  /* TODO */
138281418a27Smrg}
138381418a27SmrgPOST_SYSCALL(compat_10_omsgsys)
138481418a27Smrg(long long res, long long which_, long long a2_, long long a3_, long long a4_,
138581418a27Smrg  long long a5_, long long a6_) {
138681418a27Smrg  /* TODO */
138781418a27Smrg}
138881418a27Smrg#else
138981418a27Smrg/* syscall 170 has been skipped */
139081418a27Smrg#endif
139181418a27Smrg#if !defined(_LP64)
139281418a27SmrgPRE_SYSCALL(compat_10_oshmsys)
139381418a27Smrg(long long which_, long long a2_, long long a3_, long long a4_) {
139481418a27Smrg  /* TODO */
139581418a27Smrg}
139681418a27SmrgPOST_SYSCALL(compat_10_oshmsys)
139781418a27Smrg(long long res, long long which_, long long a2_, long long a3_, long long a4_) {
139881418a27Smrg  /* TODO */
139981418a27Smrg}
140081418a27Smrg#else
140181418a27Smrg/* syscall 171 has been skipped */
140281418a27Smrg#endif
140381418a27Smrg/* syscall 172 has been skipped */
140481418a27SmrgPRE_SYSCALL(pread)
140581418a27Smrg(long long fd_, void *buf_, long long nbyte_, long long PAD_,
140681418a27Smrg  long long offset_) {
140781418a27Smrg  if (buf_) {
140881418a27Smrg    PRE_WRITE(buf_, nbyte_);
140981418a27Smrg  }
141081418a27Smrg}
141181418a27SmrgPOST_SYSCALL(pread)
141281418a27Smrg(long long res, long long fd_, void *buf_, long long nbyte_, long long PAD_,
141381418a27Smrg  long long offset_) {
141481418a27Smrg  if (res > 0) {
141581418a27Smrg    POST_WRITE(buf_, res);
141681418a27Smrg  }
141781418a27Smrg}
141881418a27SmrgPRE_SYSCALL(pwrite)
141981418a27Smrg(long long fd_, void *buf_, long long nbyte_, long long PAD_,
142081418a27Smrg  long long offset_) {
142181418a27Smrg  if (buf_) {
142281418a27Smrg    PRE_READ(buf_, nbyte_);
142381418a27Smrg  }
142481418a27Smrg}
142581418a27SmrgPOST_SYSCALL(pwrite)
142681418a27Smrg(long long res, long long fd_, void *buf_, long long nbyte_, long long PAD_,
142781418a27Smrg  long long offset_) {
142881418a27Smrg  if (res > 0) {
142981418a27Smrg    POST_READ(buf_, res);
143081418a27Smrg  }
143181418a27Smrg}
143281418a27SmrgPRE_SYSCALL(compat_30_ntp_gettime)(void *ntvp_) { /* TODO */ }
143381418a27SmrgPOST_SYSCALL(compat_30_ntp_gettime)(long long res, void *ntvp_) { /* TODO */ }
143481418a27Smrg#if defined(NTP) || !defined(_KERNEL_OPT)
143581418a27SmrgPRE_SYSCALL(ntp_adjtime)(void *tp_) { /* Nothing to do */ }
143681418a27SmrgPOST_SYSCALL(ntp_adjtime)(long long res, void *tp_) { /* Nothing to do */ }
143781418a27Smrg#else
143881418a27Smrg/* syscall 176 has been skipped */
143981418a27Smrg#endif
144081418a27Smrg/* syscall 177 has been skipped */
144181418a27Smrg/* syscall 178 has been skipped */
144281418a27Smrg/* syscall 179 has been skipped */
144381418a27Smrg/* syscall 180 has been skipped */
144481418a27SmrgPRE_SYSCALL(setgid)(long long gid_) { /* Nothing to do */ }
144581418a27SmrgPOST_SYSCALL(setgid)(long long res, long long gid_) { /* Nothing to do */ }
144681418a27SmrgPRE_SYSCALL(setegid)(long long egid_) { /* Nothing to do */ }
144781418a27SmrgPOST_SYSCALL(setegid)(long long res, long long egid_) { /* Nothing to do */ }
144881418a27SmrgPRE_SYSCALL(seteuid)(long long euid_) { /* Nothing to do */ }
144981418a27SmrgPOST_SYSCALL(seteuid)(long long res, long long euid_) { /* Nothing to do */ }
145081418a27SmrgPRE_SYSCALL(lfs_bmapv)(void *fsidp_, void *blkiov_, long long blkcnt_) {
145181418a27Smrg  /* TODO */
145281418a27Smrg}
145381418a27SmrgPOST_SYSCALL(lfs_bmapv)
145481418a27Smrg(long long res, void *fsidp_, void *blkiov_, long long blkcnt_) {
145581418a27Smrg  /* TODO */
145681418a27Smrg}
145781418a27SmrgPRE_SYSCALL(lfs_markv)(void *fsidp_, void *blkiov_, long long blkcnt_) {
145881418a27Smrg  /* TODO */
145981418a27Smrg}
146081418a27SmrgPOST_SYSCALL(lfs_markv)
146181418a27Smrg(long long res, void *fsidp_, void *blkiov_, long long blkcnt_) {
146281418a27Smrg  /* TODO */
146381418a27Smrg}
146481418a27SmrgPRE_SYSCALL(lfs_segclean)(void *fsidp_, long long segment_) { /* TODO */ }
146581418a27SmrgPOST_SYSCALL(lfs_segclean)(long long res, void *fsidp_, long long segment_) {
146681418a27Smrg  /* TODO */
146781418a27Smrg}
146881418a27SmrgPRE_SYSCALL(compat_50_lfs_segwait)(void *fsidp_, void *tv_) { /* TODO */ }
146981418a27SmrgPOST_SYSCALL(compat_50_lfs_segwait)(long long res, void *fsidp_, void *tv_) {
147081418a27Smrg  /* TODO */
147181418a27Smrg}
147281418a27SmrgPRE_SYSCALL(compat_12_stat12)(void *path_, void *ub_) { /* TODO */ }
147381418a27SmrgPOST_SYSCALL(compat_12_stat12)(long long res, void *path_, void *ub_) {
147481418a27Smrg  /* TODO */
147581418a27Smrg}
147681418a27SmrgPRE_SYSCALL(compat_12_fstat12)(long long fd_, void *sb_) { /* TODO */ }
147781418a27SmrgPOST_SYSCALL(compat_12_fstat12)(long long res, long long fd_, void *sb_) {
147881418a27Smrg  /* TODO */
147981418a27Smrg}
148081418a27SmrgPRE_SYSCALL(compat_12_lstat12)(void *path_, void *ub_) { /* TODO */ }
148181418a27SmrgPOST_SYSCALL(compat_12_lstat12)(long long res, void *path_, void *ub_) {
148281418a27Smrg  /* TODO */
148381418a27Smrg}
148481418a27SmrgPRE_SYSCALL(pathconf)(void *path_, long long name_) {
148581418a27Smrg  const char *path = (const char *)path_;
148681418a27Smrg  if (path) {
148781418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
148881418a27Smrg  }
148981418a27Smrg}
149081418a27SmrgPOST_SYSCALL(pathconf)(long long res, void *path_, long long name_) {
149181418a27Smrg  if (res != -1) {
149281418a27Smrg    const char *path = (const char *)path_;
149381418a27Smrg    if (path) {
149481418a27Smrg      POST_READ(path, __sanitizer::internal_strlen(path) + 1);
149581418a27Smrg    }
149681418a27Smrg  }
149781418a27Smrg}
149881418a27SmrgPRE_SYSCALL(fpathconf)(long long fd_, long long name_) { /* Nothing to do */ }
149981418a27SmrgPOST_SYSCALL(fpathconf)(long long res, long long fd_, long long name_) {
150081418a27Smrg  /* Nothing to do */
150181418a27Smrg}
15027bb5462dSkamilPRE_SYSCALL(getsockopt2)
15037bb5462dSkamil(long long s_, long long level_, long long name_, void *val_, void *avalsize_) {
15047bb5462dSkamil  /* TODO */
15057bb5462dSkamil}
15067bb5462dSkamilPOST_SYSCALL(getsockopt2)
15077bb5462dSkamil(long long res, long long s_, long long level_, long long name_, void *val_,
15087bb5462dSkamil  void *avalsize_) {
15097bb5462dSkamil  /* TODO */
15107bb5462dSkamil}
151181418a27SmrgPRE_SYSCALL(getrlimit)(long long which_, void *rlp_) {
151281418a27Smrg  PRE_WRITE(rlp_, struct_rlimit_sz);
151381418a27Smrg}
151481418a27SmrgPOST_SYSCALL(getrlimit)(long long res, long long which_, void *rlp_) {
151581418a27Smrg  if (res == 0) {
151681418a27Smrg    POST_WRITE(rlp_, struct_rlimit_sz);
151781418a27Smrg  }
151881418a27Smrg}
151981418a27SmrgPRE_SYSCALL(setrlimit)(long long which_, void *rlp_) {
152081418a27Smrg  PRE_READ(rlp_, struct_rlimit_sz);
152181418a27Smrg}
152281418a27SmrgPOST_SYSCALL(setrlimit)(long long res, long long which_, void *rlp_) {
152381418a27Smrg  if (res == 0) {
152481418a27Smrg    POST_READ(rlp_, struct_rlimit_sz);
152581418a27Smrg  }
152681418a27Smrg}
152781418a27SmrgPRE_SYSCALL(compat_12_getdirentries)
152881418a27Smrg(long long fd_, void *buf_, long long count_, void *basep_) {
152981418a27Smrg  /* TODO */
153081418a27Smrg}
153181418a27SmrgPOST_SYSCALL(compat_12_getdirentries)
153281418a27Smrg(long long res, long long fd_, void *buf_, long long count_, void *basep_) {
153381418a27Smrg  /* TODO */
153481418a27Smrg}
153581418a27SmrgPRE_SYSCALL(mmap)
153681418a27Smrg(void *addr_, long long len_, long long prot_, long long flags_, long long fd_,
153781418a27Smrg  long long PAD_, long long pos_) {
153881418a27Smrg  /* Nothing to do */
153981418a27Smrg}
154081418a27SmrgPOST_SYSCALL(mmap)
154181418a27Smrg(long long res, void *addr_, long long len_, long long prot_, long long flags_,
154281418a27Smrg  long long fd_, long long PAD_, long long pos_) {
154381418a27Smrg  /* Nothing to do */
154481418a27Smrg}
154581418a27SmrgPRE_SYSCALL(__syscall)(long long code_, long long args_[SYS_MAXSYSARGS]) {
154681418a27Smrg  /* Nothing to do */
154781418a27Smrg}
154881418a27SmrgPOST_SYSCALL(__syscall)
154981418a27Smrg(long long res, long long code_, long long args_[SYS_MAXSYSARGS]) {
155081418a27Smrg  /* Nothing to do */
155181418a27Smrg}
155281418a27SmrgPRE_SYSCALL(lseek)
155381418a27Smrg(long long fd_, long long PAD_, long long offset_, long long whence_) {
155481418a27Smrg  /* Nothing to do */
155581418a27Smrg}
155681418a27SmrgPOST_SYSCALL(lseek)
155781418a27Smrg(long long res, long long fd_, long long PAD_, long long offset_,
155881418a27Smrg  long long whence_) {
155981418a27Smrg  /* Nothing to do */
156081418a27Smrg}
156181418a27SmrgPRE_SYSCALL(truncate)(void *path_, long long PAD_, long long length_) {
156281418a27Smrg  const char *path = (const char *)path_;
156381418a27Smrg  if (path) {
156481418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
156581418a27Smrg  }
156681418a27Smrg}
156781418a27SmrgPOST_SYSCALL(truncate)
156881418a27Smrg(long long res, void *path_, long long PAD_, long long length_) {
156981418a27Smrg  if (res == 0) {
157081418a27Smrg    const char *path = (const char *)path_;
157181418a27Smrg    if (path) {
157281418a27Smrg      POST_READ(path, __sanitizer::internal_strlen(path) + 1);
157381418a27Smrg    }
157481418a27Smrg  }
157581418a27Smrg}
157681418a27SmrgPRE_SYSCALL(ftruncate)(long long fd_, long long PAD_, long long length_) {
157781418a27Smrg  /* Nothing to do */
157881418a27Smrg}
157981418a27SmrgPOST_SYSCALL(ftruncate)
158081418a27Smrg(long long res, long long fd_, long long PAD_, long long length_) {
158181418a27Smrg  /* Nothing to do */
158281418a27Smrg}
158381418a27SmrgPRE_SYSCALL(__sysctl)
158481418a27Smrg(void *name_, long long namelen_, void *oldv_, void *oldlenp_, void *newv_,
158581418a27Smrg  long long newlen_) {
158681418a27Smrg  const int *name = (const int *)name_;
158781418a27Smrg  if (name) {
158881418a27Smrg    PRE_READ(name, namelen_ * sizeof(*name));
158981418a27Smrg  }
159081418a27Smrg  if (newv_) {
159181418a27Smrg    PRE_READ(name, newlen_);
159281418a27Smrg  }
159381418a27Smrg}
159481418a27SmrgPOST_SYSCALL(__sysctl)
159581418a27Smrg(long long res, void *name_, long long namelen_, void *oldv_, void *oldlenp_,
159681418a27Smrg  void *newv_, long long newlen_) {
159781418a27Smrg  if (res == 0) {
159881418a27Smrg    const int *name = (const int *)name_;
159981418a27Smrg    if (name) {
160081418a27Smrg      POST_READ(name, namelen_ * sizeof(*name));
160181418a27Smrg    }
160281418a27Smrg    if (newv_) {
160381418a27Smrg      POST_READ(name, newlen_);
160481418a27Smrg    }
160581418a27Smrg  }
160681418a27Smrg}
160781418a27SmrgPRE_SYSCALL(mlock)(void *addr_, long long len_) { /* Nothing to do */ }
160881418a27SmrgPOST_SYSCALL(mlock)(long long res, void *addr_, long long len_) {
160981418a27Smrg  /* Nothing to do */
161081418a27Smrg}
161181418a27SmrgPRE_SYSCALL(munlock)(void *addr_, long long len_) { /* Nothing to do */ }
161281418a27SmrgPOST_SYSCALL(munlock)(long long res, void *addr_, long long len_) {
161381418a27Smrg  /* Nothing to do */
161481418a27Smrg}
161581418a27SmrgPRE_SYSCALL(undelete)(void *path_) {
161681418a27Smrg  const char *path = (const char *)path_;
161781418a27Smrg  if (path) {
161881418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
161981418a27Smrg  }
162081418a27Smrg}
162181418a27SmrgPOST_SYSCALL(undelete)(long long res, void *path_) {
162281418a27Smrg  if (res == 0) {
162381418a27Smrg    const char *path = (const char *)path_;
162481418a27Smrg    if (path) {
162581418a27Smrg      POST_READ(path, __sanitizer::internal_strlen(path) + 1);
162681418a27Smrg    }
162781418a27Smrg  }
162881418a27Smrg}
162981418a27SmrgPRE_SYSCALL(compat_50_futimes)(long long fd_, void *tptr_) { /* TODO */ }
163081418a27SmrgPOST_SYSCALL(compat_50_futimes)(long long res, long long fd_, void *tptr_) {
163181418a27Smrg  /* TODO */
163281418a27Smrg}
163381418a27SmrgPRE_SYSCALL(getpgid)(long long pid_) { /* Nothing to do */ }
163481418a27SmrgPOST_SYSCALL(getpgid)(long long res, long long pid_) { /* Nothing to do */ }
163581418a27SmrgPRE_SYSCALL(reboot)(long long opt_, void *bootstr_) {
163681418a27Smrg  const char *bootstr = (const char *)bootstr_;
163781418a27Smrg  if (bootstr) {
163881418a27Smrg    PRE_READ(bootstr, __sanitizer::internal_strlen(bootstr) + 1);
163981418a27Smrg  }
164081418a27Smrg}
164181418a27SmrgPOST_SYSCALL(reboot)(long long res, long long opt_, void *bootstr_) {
164281418a27Smrg  /* This call should never return */
164381418a27Smrg  const char *bootstr = (const char *)bootstr_;
164481418a27Smrg  if (bootstr) {
164581418a27Smrg    POST_READ(bootstr, __sanitizer::internal_strlen(bootstr) + 1);
164681418a27Smrg  }
164781418a27Smrg}
164881418a27SmrgPRE_SYSCALL(poll)(void *fds_, long long nfds_, long long timeout_) {
164981418a27Smrg  /* Nothing to do */
165081418a27Smrg}
165181418a27SmrgPOST_SYSCALL(poll)
165281418a27Smrg(long long res, void *fds_, long long nfds_, long long timeout_) {
165381418a27Smrg  /* Nothing to do */
165481418a27Smrg}
165581418a27SmrgPRE_SYSCALL(afssys)
165681418a27Smrg(long long id_, long long a1_, long long a2_, long long a3_, long long a4_,
165781418a27Smrg  long long a5_, long long a6_) {
165881418a27Smrg  /* TODO */
165981418a27Smrg}
166081418a27SmrgPOST_SYSCALL(afssys)
166181418a27Smrg(long long res, long long id_, long long a1_, long long a2_, long long a3_,
166281418a27Smrg  long long a4_, long long a5_, long long a6_) {
166381418a27Smrg  /* TODO */
166481418a27Smrg}
166581418a27Smrg/* syscall 211 has been skipped */
166681418a27Smrg/* syscall 212 has been skipped */
166781418a27Smrg/* syscall 213 has been skipped */
166881418a27Smrg/* syscall 214 has been skipped */
166981418a27Smrg/* syscall 215 has been skipped */
167081418a27Smrg/* syscall 216 has been skipped */
167181418a27Smrg/* syscall 217 has been skipped */
167281418a27Smrg/* syscall 218 has been skipped */
167381418a27Smrg/* syscall 219 has been skipped */
167481418a27SmrgPRE_SYSCALL(compat_14___semctl)
167581418a27Smrg(long long semid_, long long semnum_, long long cmd_, void *arg_) {
167681418a27Smrg  /* TODO */
167781418a27Smrg}
167881418a27SmrgPOST_SYSCALL(compat_14___semctl)
167981418a27Smrg(long long res, long long semid_, long long semnum_, long long cmd_,
168081418a27Smrg  void *arg_) {
168181418a27Smrg  /* TODO */
168281418a27Smrg}
168381418a27SmrgPRE_SYSCALL(semget)(long long key_, long long nsems_, long long semflg_) {
168481418a27Smrg  /* Nothing to do */
168581418a27Smrg}
168681418a27SmrgPOST_SYSCALL(semget)
168781418a27Smrg(long long res, long long key_, long long nsems_, long long semflg_) {
168881418a27Smrg  /* Nothing to do */
168981418a27Smrg}
169081418a27SmrgPRE_SYSCALL(semop)(long long semid_, void *sops_, long long nsops_) {
169181418a27Smrg  if (sops_) {
169281418a27Smrg    PRE_READ(sops_, nsops_ * struct_sembuf_sz);
169381418a27Smrg  }
169481418a27Smrg}
169581418a27SmrgPOST_SYSCALL(semop)
169681418a27Smrg(long long res, long long semid_, void *sops_, long long nsops_) {
169781418a27Smrg  if (res == 0) {
169881418a27Smrg    if (sops_) {
169981418a27Smrg      POST_READ(sops_, nsops_ * struct_sembuf_sz);
170081418a27Smrg    }
170181418a27Smrg  }
170281418a27Smrg}
170381418a27SmrgPRE_SYSCALL(semconfig)(long long flag_) { /* Nothing to do */ }
170481418a27SmrgPOST_SYSCALL(semconfig)(long long res, long long flag_) { /* Nothing to do */ }
170581418a27SmrgPRE_SYSCALL(compat_14_msgctl)(long long msqid_, long long cmd_, void *buf_) {
170681418a27Smrg  /* TODO */
170781418a27Smrg}
170881418a27SmrgPOST_SYSCALL(compat_14_msgctl)
170981418a27Smrg(long long res, long long msqid_, long long cmd_, void *buf_) {
171081418a27Smrg  /* TODO */
171181418a27Smrg}
171281418a27SmrgPRE_SYSCALL(msgget)(long long key_, long long msgflg_) { /* Nothing to do */ }
171381418a27SmrgPOST_SYSCALL(msgget)(long long res, long long key_, long long msgflg_) {
171481418a27Smrg  /* Nothing to do */
171581418a27Smrg}
171681418a27SmrgPRE_SYSCALL(msgsnd)
171781418a27Smrg(long long msqid_, void *msgp_, long long msgsz_, long long msgflg_) {
171881418a27Smrg  if (msgp_) {
171981418a27Smrg    PRE_READ(msgp_, msgsz_);
172081418a27Smrg  }
172181418a27Smrg}
172281418a27SmrgPOST_SYSCALL(msgsnd)
172381418a27Smrg(long long res, long long msqid_, void *msgp_, long long msgsz_,
172481418a27Smrg  long long msgflg_) {
172581418a27Smrg  if (res == 0) {
172681418a27Smrg    if (msgp_) {
172781418a27Smrg      POST_READ(msgp_, msgsz_);
172881418a27Smrg    }
172981418a27Smrg  }
173081418a27Smrg}
173181418a27SmrgPRE_SYSCALL(msgrcv)
173281418a27Smrg(long long msqid_, void *msgp_, long long msgsz_, long long msgtyp_,
173381418a27Smrg  long long msgflg_) {
173481418a27Smrg  /* Nothing to do */
173581418a27Smrg}
173681418a27SmrgPOST_SYSCALL(msgrcv)
173781418a27Smrg(long long res, long long msqid_, void *msgp_, long long msgsz_,
173881418a27Smrg  long long msgtyp_, long long msgflg_) {
173981418a27Smrg  /* Nothing to do */
174081418a27Smrg}
174181418a27SmrgPRE_SYSCALL(shmat)(long long shmid_, void *shmaddr_, long long shmflg_) {
174281418a27Smrg  /* Nothing to do */
174381418a27Smrg}
174481418a27SmrgPOST_SYSCALL(shmat)
174581418a27Smrg(long long res, long long shmid_, void *shmaddr_, long long shmflg_) {
174681418a27Smrg  /* Nothing to do */
174781418a27Smrg}
174881418a27SmrgPRE_SYSCALL(compat_14_shmctl)(long long shmid_, long long cmd_, void *buf_) {
174981418a27Smrg  /* TODO */
175081418a27Smrg}
175181418a27SmrgPOST_SYSCALL(compat_14_shmctl)
175281418a27Smrg(long long res, long long shmid_, long long cmd_, void *buf_) {
175381418a27Smrg  /* TODO */
175481418a27Smrg}
175581418a27SmrgPRE_SYSCALL(shmdt)(void *shmaddr_) { /* Nothing to do */ }
175681418a27SmrgPOST_SYSCALL(shmdt)(long long res, void *shmaddr_) { /* Nothing to do */ }
175781418a27SmrgPRE_SYSCALL(shmget)(long long key_, long long size_, long long shmflg_) {
175881418a27Smrg  /* Nothing to do */
175981418a27Smrg}
176081418a27SmrgPOST_SYSCALL(shmget)
176181418a27Smrg(long long res, long long key_, long long size_, long long shmflg_) {
176281418a27Smrg  /* Nothing to do */
176381418a27Smrg}
176481418a27SmrgPRE_SYSCALL(compat_50_clock_gettime)(long long clock_id_, void *tp_) {
176581418a27Smrg  /* TODO */
176681418a27Smrg}
176781418a27SmrgPOST_SYSCALL(compat_50_clock_gettime)
176881418a27Smrg(long long res, long long clock_id_, void *tp_) {
176981418a27Smrg  /* TODO */
177081418a27Smrg}
177181418a27SmrgPRE_SYSCALL(compat_50_clock_settime)(long long clock_id_, void *tp_) {
177281418a27Smrg  /* TODO */
177381418a27Smrg}
177481418a27SmrgPOST_SYSCALL(compat_50_clock_settime)
177581418a27Smrg(long long res, long long clock_id_, void *tp_) {
177681418a27Smrg  /* TODO */
177781418a27Smrg}
177881418a27SmrgPRE_SYSCALL(compat_50_clock_getres)(long long clock_id_, void *tp_) {
177981418a27Smrg  /* TODO */
178081418a27Smrg}
178181418a27SmrgPOST_SYSCALL(compat_50_clock_getres)
178281418a27Smrg(long long res, long long clock_id_, void *tp_) {
178381418a27Smrg  /* TODO */
178481418a27Smrg}
178581418a27SmrgPRE_SYSCALL(timer_create)(long long clock_id_, void *evp_, void *timerid_) {
178681418a27Smrg  /* Nothing to do */
178781418a27Smrg}
178881418a27SmrgPOST_SYSCALL(timer_create)
178981418a27Smrg(long long res, long long clock_id_, void *evp_, void *timerid_) {
179081418a27Smrg  /* Nothing to do */
179181418a27Smrg}
179281418a27SmrgPRE_SYSCALL(timer_delete)(long long timerid_) { /* Nothing to do */ }
179381418a27SmrgPOST_SYSCALL(timer_delete)(long long res, long long timerid_) {
179481418a27Smrg  /* Nothing to do */
179581418a27Smrg}
179681418a27SmrgPRE_SYSCALL(compat_50_timer_settime)
179781418a27Smrg(long long timerid_, long long flags_, void *value_, void *ovalue_) {
179881418a27Smrg  /* TODO */
179981418a27Smrg}
180081418a27SmrgPOST_SYSCALL(compat_50_timer_settime)
180181418a27Smrg(long long res, long long timerid_, long long flags_, void *value_,
180281418a27Smrg  void *ovalue_) {
180381418a27Smrg  /* TODO */
180481418a27Smrg}
180581418a27SmrgPRE_SYSCALL(compat_50_timer_gettime)(long long timerid_, void *value_) {
180681418a27Smrg  /* TODO */
180781418a27Smrg}
180881418a27SmrgPOST_SYSCALL(compat_50_timer_gettime)
180981418a27Smrg(long long res, long long timerid_, void *value_) {
181081418a27Smrg  /* TODO */
181181418a27Smrg}
181281418a27SmrgPRE_SYSCALL(timer_getoverrun)(long long timerid_) { /* Nothing to do */ }
181381418a27SmrgPOST_SYSCALL(timer_getoverrun)(long long res, long long timerid_) {
181481418a27Smrg  /* Nothing to do */
181581418a27Smrg}
181681418a27SmrgPRE_SYSCALL(compat_50_nanosleep)(void *rqtp_, void *rmtp_) { /* TODO */ }
181781418a27SmrgPOST_SYSCALL(compat_50_nanosleep)(long long res, void *rqtp_, void *rmtp_) {
181881418a27Smrg  /* TODO */
181981418a27Smrg}
182081418a27SmrgPRE_SYSCALL(fdatasync)(long long fd_) { /* Nothing to do */ }
182181418a27SmrgPOST_SYSCALL(fdatasync)(long long res, long long fd_) { /* Nothing to do */ }
182281418a27SmrgPRE_SYSCALL(mlockall)(long long flags_) { /* Nothing to do */ }
182381418a27SmrgPOST_SYSCALL(mlockall)(long long res, long long flags_) { /* Nothing to do */ }
182481418a27SmrgPRE_SYSCALL(munlockall)(void) { /* Nothing to do */ }
182581418a27SmrgPOST_SYSCALL(munlockall)(long long res) { /* Nothing to do */ }
182681418a27SmrgPRE_SYSCALL(compat_50___sigtimedwait)(void *set_, void *info_, void *timeout_) {
182781418a27Smrg  /* TODO */
182881418a27Smrg}
182981418a27SmrgPOST_SYSCALL(compat_50___sigtimedwait)
183081418a27Smrg(long long res, void *set_, void *info_, void *timeout_) {
183181418a27Smrg  /* TODO */
183281418a27Smrg}
183381418a27SmrgPRE_SYSCALL(sigqueueinfo)(long long pid_, void *info_) {
183481418a27Smrg  if (info_) {
183581418a27Smrg    PRE_READ(info_, siginfo_t_sz);
183681418a27Smrg  }
183781418a27Smrg}
183881418a27SmrgPOST_SYSCALL(sigqueueinfo)(long long res, long long pid_, void *info_) {}
183981418a27SmrgPRE_SYSCALL(modctl)(long long cmd_, void *arg_) { /* TODO */ }
184081418a27SmrgPOST_SYSCALL(modctl)(long long res, long long cmd_, void *arg_) { /* TODO */ }
184181418a27SmrgPRE_SYSCALL(_ksem_init)(long long value_, void *idp_) { /* Nothing to do */ }
184281418a27SmrgPOST_SYSCALL(_ksem_init)(long long res, long long value_, void *idp_) {
184381418a27Smrg  /* Nothing to do */
184481418a27Smrg}
184581418a27SmrgPRE_SYSCALL(_ksem_open)
184681418a27Smrg(void *name_, long long oflag_, long long mode_, long long value_, void *idp_) {
184781418a27Smrg  const char *name = (const char *)name_;
184881418a27Smrg  if (name) {
184981418a27Smrg    PRE_READ(name, __sanitizer::internal_strlen(name) + 1);
185081418a27Smrg  }
185181418a27Smrg}
185281418a27SmrgPOST_SYSCALL(_ksem_open)
185381418a27Smrg(long long res, void *name_, long long oflag_, long long mode_,
185481418a27Smrg  long long value_, void *idp_) {
185581418a27Smrg  const char *name = (const char *)name_;
185681418a27Smrg  if (name) {
185781418a27Smrg    POST_READ(name, __sanitizer::internal_strlen(name) + 1);
185881418a27Smrg  }
185981418a27Smrg}
186081418a27SmrgPRE_SYSCALL(_ksem_unlink)(void *name_) {
186181418a27Smrg  const char *name = (const char *)name_;
186281418a27Smrg  if (name) {
186381418a27Smrg    PRE_READ(name, __sanitizer::internal_strlen(name) + 1);
186481418a27Smrg  }
186581418a27Smrg}
186681418a27SmrgPOST_SYSCALL(_ksem_unlink)(long long res, void *name_) {
186781418a27Smrg  const char *name = (const char *)name_;
186881418a27Smrg  if (name) {
186981418a27Smrg    POST_READ(name, __sanitizer::internal_strlen(name) + 1);
187081418a27Smrg  }
187181418a27Smrg}
187281418a27SmrgPRE_SYSCALL(_ksem_close)(long long id_) { /* Nothing to do */ }
187381418a27SmrgPOST_SYSCALL(_ksem_close)(long long res, long long id_) { /* Nothing to do */ }
187481418a27SmrgPRE_SYSCALL(_ksem_post)(long long id_) { /* Nothing to do */ }
187581418a27SmrgPOST_SYSCALL(_ksem_post)(long long res, long long id_) { /* Nothing to do */ }
187681418a27SmrgPRE_SYSCALL(_ksem_wait)(long long id_) { /* Nothing to do */ }
187781418a27SmrgPOST_SYSCALL(_ksem_wait)(long long res, long long id_) { /* Nothing to do */ }
187881418a27SmrgPRE_SYSCALL(_ksem_trywait)(long long id_) { /* Nothing to do */ }
187981418a27SmrgPOST_SYSCALL(_ksem_trywait)(long long res, long long id_) {
188081418a27Smrg  /* Nothing to do */
188181418a27Smrg}
188281418a27SmrgPRE_SYSCALL(_ksem_getvalue)(long long id_, void *value_) { /* Nothing to do */ }
188381418a27SmrgPOST_SYSCALL(_ksem_getvalue)(long long res, long long id_, void *value_) {
188481418a27Smrg  /* Nothing to do */
188581418a27Smrg}
188681418a27SmrgPRE_SYSCALL(_ksem_destroy)(long long id_) { /* Nothing to do */ }
188781418a27SmrgPOST_SYSCALL(_ksem_destroy)(long long res, long long id_) {
188881418a27Smrg  /* Nothing to do */
188981418a27Smrg}
189081418a27SmrgPRE_SYSCALL(_ksem_timedwait)(long long id_, void *abstime_) {
189181418a27Smrg  if (abstime_) {
189281418a27Smrg    PRE_READ(abstime_, struct_timespec_sz);
189381418a27Smrg  }
189481418a27Smrg}
189581418a27SmrgPOST_SYSCALL(_ksem_timedwait)(long long res, long long id_, void *abstime_) {}
189681418a27SmrgPRE_SYSCALL(mq_open)
189781418a27Smrg(void *name_, long long oflag_, long long mode_, void *attr_) {
189881418a27Smrg  const char *name = (const char *)name_;
189981418a27Smrg  if (name) {
190081418a27Smrg    PRE_READ(name, __sanitizer::internal_strlen(name) + 1);
190181418a27Smrg  }
190281418a27Smrg}
190381418a27SmrgPOST_SYSCALL(mq_open)
190481418a27Smrg(long long res, void *name_, long long oflag_, long long mode_, void *attr_) {
190581418a27Smrg  const char *name = (const char *)name_;
190681418a27Smrg  if (name) {
190781418a27Smrg    POST_READ(name, __sanitizer::internal_strlen(name) + 1);
190881418a27Smrg  }
190981418a27Smrg}
191081418a27SmrgPRE_SYSCALL(mq_close)(long long mqdes_) { /* Nothing to do */ }
191181418a27SmrgPOST_SYSCALL(mq_close)(long long res, long long mqdes_) { /* Nothing to do */ }
191281418a27SmrgPRE_SYSCALL(mq_unlink)(void *name_) {
191381418a27Smrg  const char *name = (const char *)name_;
191481418a27Smrg  if (name) {
191581418a27Smrg    PRE_READ(name, __sanitizer::internal_strlen(name) + 1);
191681418a27Smrg  }
191781418a27Smrg}
191881418a27SmrgPOST_SYSCALL(mq_unlink)(long long res, void *name_) {
191981418a27Smrg  const char *name = (const char *)name_;
192081418a27Smrg  if (name) {
192181418a27Smrg    POST_READ(name, __sanitizer::internal_strlen(name) + 1);
192281418a27Smrg  }
192381418a27Smrg}
192481418a27SmrgPRE_SYSCALL(mq_getattr)(long long mqdes_, void *mqstat_) { /* Nothing to do */ }
192581418a27SmrgPOST_SYSCALL(mq_getattr)(long long res, long long mqdes_, void *mqstat_) {
192681418a27Smrg  /* Nothing to do */
192781418a27Smrg}
192881418a27SmrgPRE_SYSCALL(mq_setattr)(long long mqdes_, void *mqstat_, void *omqstat_) {
192981418a27Smrg  if (mqstat_) {
193081418a27Smrg    PRE_READ(mqstat_, struct_mq_attr_sz);
193181418a27Smrg  }
193281418a27Smrg}
193381418a27SmrgPOST_SYSCALL(mq_setattr)
193481418a27Smrg(long long res, long long mqdes_, void *mqstat_, void *omqstat_) {}
193581418a27SmrgPRE_SYSCALL(mq_notify)(long long mqdes_, void *notification_) {
193681418a27Smrg  if (notification_) {
193781418a27Smrg    PRE_READ(notification_, struct_sigevent_sz);
193881418a27Smrg  }
193981418a27Smrg}
194081418a27SmrgPOST_SYSCALL(mq_notify)(long long res, long long mqdes_, void *notification_) {}
194181418a27SmrgPRE_SYSCALL(mq_send)
194281418a27Smrg(long long mqdes_, void *msg_ptr_, long long msg_len_, long long msg_prio_) {
194381418a27Smrg  if (msg_ptr_) {
194481418a27Smrg    PRE_READ(msg_ptr_, msg_len_);
194581418a27Smrg  }
194681418a27Smrg}
194781418a27SmrgPOST_SYSCALL(mq_send)
194881418a27Smrg(long long res, long long mqdes_, void *msg_ptr_, long long msg_len_,
194981418a27Smrg  long long msg_prio_) {}
195081418a27SmrgPRE_SYSCALL(mq_receive)
195181418a27Smrg(long long mqdes_, void *msg_ptr_, long long msg_len_, void *msg_prio_) {
195281418a27Smrg  /* Nothing to do */
195381418a27Smrg}
195481418a27SmrgPOST_SYSCALL(mq_receive)
195581418a27Smrg(long long res, long long mqdes_, void *msg_ptr_, long long msg_len_,
195681418a27Smrg  void *msg_prio_) {
195781418a27Smrg  /* Nothing to do */
195881418a27Smrg}
195981418a27SmrgPRE_SYSCALL(compat_50_mq_timedsend)
196081418a27Smrg(long long mqdes_, void *msg_ptr_, long long msg_len_, long long msg_prio_,
196181418a27Smrg  void *abs_timeout_) {
196281418a27Smrg  /* TODO */
196381418a27Smrg}
196481418a27SmrgPOST_SYSCALL(compat_50_mq_timedsend)
196581418a27Smrg(long long res, long long mqdes_, void *msg_ptr_, long long msg_len_,
196681418a27Smrg  long long msg_prio_, void *abs_timeout_) {
196781418a27Smrg  /* TODO */
196881418a27Smrg}
196981418a27SmrgPRE_SYSCALL(compat_50_mq_timedreceive)
197081418a27Smrg(long long mqdes_, void *msg_ptr_, long long msg_len_, void *msg_prio_,
197181418a27Smrg  void *abs_timeout_) {
197281418a27Smrg  /* TODO */
197381418a27Smrg}
197481418a27SmrgPOST_SYSCALL(compat_50_mq_timedreceive)
197581418a27Smrg(long long res, long long mqdes_, void *msg_ptr_, long long msg_len_,
197681418a27Smrg  void *msg_prio_, void *abs_timeout_) {
197781418a27Smrg  /* TODO */
197881418a27Smrg}
197981418a27Smrg/* syscall 267 has been skipped */
198081418a27Smrg/* syscall 268 has been skipped */
198181418a27Smrg/* syscall 269 has been skipped */
198281418a27SmrgPRE_SYSCALL(__posix_rename)(void *from_, void *to_) {
198381418a27Smrg  const char *from = (const char *)from_;
198481418a27Smrg  const char *to = (const char *)to_;
198581418a27Smrg  if (from_) {
198681418a27Smrg    PRE_READ(from, __sanitizer::internal_strlen(from) + 1);
198781418a27Smrg  }
198881418a27Smrg  if (to) {
198981418a27Smrg    PRE_READ(to, __sanitizer::internal_strlen(to) + 1);
199081418a27Smrg  }
199181418a27Smrg}
199281418a27SmrgPOST_SYSCALL(__posix_rename)(long long res, void *from_, void *to_) {
199381418a27Smrg  const char *from = (const char *)from_;
199481418a27Smrg  const char *to = (const char *)to_;
199581418a27Smrg  if (from) {
199681418a27Smrg    POST_READ(from, __sanitizer::internal_strlen(from) + 1);
199781418a27Smrg  }
199881418a27Smrg  if (to) {
199981418a27Smrg    POST_READ(to, __sanitizer::internal_strlen(to) + 1);
200081418a27Smrg  }
200181418a27Smrg}
200281418a27SmrgPRE_SYSCALL(swapctl)(long long cmd_, void *arg_, long long misc_) { /* TODO */ }
200381418a27SmrgPOST_SYSCALL(swapctl)
200481418a27Smrg(long long res, long long cmd_, void *arg_, long long misc_) {
200581418a27Smrg  /* TODO */
200681418a27Smrg}
200781418a27SmrgPRE_SYSCALL(compat_30_getdents)(long long fd_, void *buf_, long long count_) {
200881418a27Smrg  /* TODO */
200981418a27Smrg}
201081418a27SmrgPOST_SYSCALL(compat_30_getdents)
201181418a27Smrg(long long res, long long fd_, void *buf_, long long count_) {
201281418a27Smrg  /* TODO */
201381418a27Smrg}
201481418a27SmrgPRE_SYSCALL(minherit)(void *addr_, long long len_, long long inherit_) {
201581418a27Smrg  /* Nothing to do */
201681418a27Smrg}
201781418a27SmrgPOST_SYSCALL(minherit)
201881418a27Smrg(long long res, void *addr_, long long len_, long long inherit_) {
201981418a27Smrg  /* Nothing to do */
202081418a27Smrg}
202181418a27SmrgPRE_SYSCALL(lchmod)(void *path_, long long mode_) {
202281418a27Smrg  const char *path = (const char *)path_;
202381418a27Smrg  if (path) {
202481418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
202581418a27Smrg  }
202681418a27Smrg}
202781418a27SmrgPOST_SYSCALL(lchmod)(long long res, void *path_, long long mode_) {
202881418a27Smrg  const char *path = (const char *)path_;
202981418a27Smrg  if (path) {
203081418a27Smrg    POST_READ(path, __sanitizer::internal_strlen(path) + 1);
203181418a27Smrg  }
203281418a27Smrg}
203381418a27SmrgPRE_SYSCALL(lchown)(void *path_, long long uid_, long long gid_) {
203481418a27Smrg  const char *path = (const char *)path_;
203581418a27Smrg  if (path) {
203681418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
203781418a27Smrg  }
203881418a27Smrg}
203981418a27SmrgPOST_SYSCALL(lchown)
204081418a27Smrg(long long res, void *path_, long long uid_, long long gid_) {
204181418a27Smrg  const char *path = (const char *)path_;
204281418a27Smrg  if (path) {
204381418a27Smrg    POST_READ(path, __sanitizer::internal_strlen(path) + 1);
204481418a27Smrg  }
204581418a27Smrg}
204681418a27SmrgPRE_SYSCALL(compat_50_lutimes)(void *path_, void *tptr_) { /* TODO */ }
204781418a27SmrgPOST_SYSCALL(compat_50_lutimes)(long long res, void *path_, void *tptr_) {
204881418a27Smrg  /* TODO */
204981418a27Smrg}
205081418a27SmrgPRE_SYSCALL(__msync13)(void *addr_, long long len_, long long flags_) {
205181418a27Smrg  /* Nothing to do */
205281418a27Smrg}
205381418a27SmrgPOST_SYSCALL(__msync13)
205481418a27Smrg(long long res, void *addr_, long long len_, long long flags_) {
205581418a27Smrg  /* Nothing to do */
205681418a27Smrg}
205781418a27SmrgPRE_SYSCALL(compat_30___stat13)(void *path_, void *ub_) { /* TODO */ }
205881418a27SmrgPOST_SYSCALL(compat_30___stat13)(long long res, void *path_, void *ub_) {
205981418a27Smrg  /* TODO */
206081418a27Smrg}
206181418a27SmrgPRE_SYSCALL(compat_30___fstat13)(long long fd_, void *sb_) { /* TODO */ }
206281418a27SmrgPOST_SYSCALL(compat_30___fstat13)(long long res, long long fd_, void *sb_) {
206381418a27Smrg  /* TODO */
206481418a27Smrg}
206581418a27SmrgPRE_SYSCALL(compat_30___lstat13)(void *path_, void *ub_) { /* TODO */ }
206681418a27SmrgPOST_SYSCALL(compat_30___lstat13)(long long res, void *path_, void *ub_) {
206781418a27Smrg  /* TODO */
206881418a27Smrg}
206981418a27SmrgPRE_SYSCALL(__sigaltstack14)(void *nss_, void *oss_) {
207081418a27Smrg  if (nss_) {
207181418a27Smrg    PRE_READ(nss_, struct_sigaltstack_sz);
207281418a27Smrg  }
207381418a27Smrg  if (oss_) {
207481418a27Smrg    PRE_READ(oss_, struct_sigaltstack_sz);
207581418a27Smrg  }
207681418a27Smrg}
207781418a27SmrgPOST_SYSCALL(__sigaltstack14)(long long res, void *nss_, void *oss_) {}
207881418a27SmrgPRE_SYSCALL(__vfork14)(void) { /* Nothing to do */ }
207981418a27SmrgPOST_SYSCALL(__vfork14)(long long res) { /* Nothing to do */ }
208081418a27SmrgPRE_SYSCALL(__posix_chown)(void *path_, long long uid_, long long gid_) {
208181418a27Smrg  const char *path = (const char *)path_;
208281418a27Smrg  if (path) {
208381418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
208481418a27Smrg  }
208581418a27Smrg}
208681418a27SmrgPOST_SYSCALL(__posix_chown)
208781418a27Smrg(long long res, void *path_, long long uid_, long long gid_) {
208881418a27Smrg  const char *path = (const char *)path_;
208981418a27Smrg  if (path) {
209081418a27Smrg    POST_READ(path, __sanitizer::internal_strlen(path) + 1);
209181418a27Smrg  }
209281418a27Smrg}
209381418a27SmrgPRE_SYSCALL(__posix_fchown)(long long fd_, long long uid_, long long gid_) {
209481418a27Smrg  /* Nothing to do */
209581418a27Smrg}
209681418a27SmrgPOST_SYSCALL(__posix_fchown)
209781418a27Smrg(long long res, long long fd_, long long uid_, long long gid_) {
209881418a27Smrg  /* Nothing to do */
209981418a27Smrg}
210081418a27SmrgPRE_SYSCALL(__posix_lchown)(void *path_, long long uid_, long long gid_) {
210181418a27Smrg  const char *path = (const char *)path_;
210281418a27Smrg  if (path) {
210381418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
210481418a27Smrg  }
210581418a27Smrg}
210681418a27SmrgPOST_SYSCALL(__posix_lchown)
210781418a27Smrg(long long res, void *path_, long long uid_, long long gid_) {
210881418a27Smrg  const char *path = (const char *)path_;
210981418a27Smrg  if (path) {
211081418a27Smrg    POST_READ(path, __sanitizer::internal_strlen(path) + 1);
211181418a27Smrg  }
211281418a27Smrg}
211381418a27SmrgPRE_SYSCALL(getsid)(long long pid_) { /* Nothing to do */ }
211481418a27SmrgPOST_SYSCALL(getsid)(long long res, long long pid_) { /* Nothing to do */ }
211581418a27SmrgPRE_SYSCALL(__clone)(long long flags_, void *stack_) { /* Nothing to do */ }
211681418a27SmrgPOST_SYSCALL(__clone)(long long res, long long flags_, void *stack_) {
211781418a27Smrg  /* Nothing to do */
211881418a27Smrg}
211981418a27SmrgPRE_SYSCALL(fktrace)
212081418a27Smrg(long long fd_, long long ops_, long long facs_, long long pid_) {
212181418a27Smrg  /* Nothing to do */
212281418a27Smrg}
212381418a27SmrgPOST_SYSCALL(fktrace)
212481418a27Smrg(long long res, long long fd_, long long ops_, long long facs_,
212581418a27Smrg  long long pid_) {
212681418a27Smrg  /* Nothing to do */
212781418a27Smrg}
212881418a27SmrgPRE_SYSCALL(preadv)
212981418a27Smrg(long long fd_, void *iovp_, long long iovcnt_, long long PAD_,
213081418a27Smrg  long long offset_) {
213181418a27Smrg  /* Nothing to do */
213281418a27Smrg}
213381418a27SmrgPOST_SYSCALL(preadv)
213481418a27Smrg(long long res, long long fd_, void *iovp_, long long iovcnt_, long long PAD_,
213581418a27Smrg  long long offset_) {
213681418a27Smrg  /* Nothing to do */
213781418a27Smrg}
213881418a27SmrgPRE_SYSCALL(pwritev)
213981418a27Smrg(long long fd_, void *iovp_, long long iovcnt_, long long PAD_,
214081418a27Smrg  long long offset_) {
214181418a27Smrg  /* Nothing to do */
214281418a27Smrg}
214381418a27SmrgPOST_SYSCALL(pwritev)
214481418a27Smrg(long long res, long long fd_, void *iovp_, long long iovcnt_, long long PAD_,
214581418a27Smrg  long long offset_) {
214681418a27Smrg  /* Nothing to do */
214781418a27Smrg}
214881418a27SmrgPRE_SYSCALL(compat_16___sigaction14)
214981418a27Smrg(long long signum_, void *nsa_, void *osa_) {
215081418a27Smrg  /* TODO */
215181418a27Smrg}
215281418a27SmrgPOST_SYSCALL(compat_16___sigaction14)
215381418a27Smrg(long long res, long long signum_, void *nsa_, void *osa_) {
215481418a27Smrg  /* TODO */
215581418a27Smrg}
215681418a27SmrgPRE_SYSCALL(__sigpending14)(void *set_) { /* Nothing to do */ }
215781418a27SmrgPOST_SYSCALL(__sigpending14)(long long res, void *set_) { /* Nothing to do */ }
215881418a27SmrgPRE_SYSCALL(__sigprocmask14)(long long how_, void *set_, void *oset_) {
215981418a27Smrg  /* Nothing to do */
216081418a27Smrg}
216181418a27SmrgPOST_SYSCALL(__sigprocmask14)
216281418a27Smrg(long long res, long long how_, void *set_, void *oset_) {
216381418a27Smrg  /* Nothing to do */
216481418a27Smrg}
216581418a27SmrgPRE_SYSCALL(__sigsuspend14)(void *set_) {
216681418a27Smrg  if (set_) {
216781418a27Smrg    PRE_READ(set_, sizeof(__sanitizer_sigset_t));
216881418a27Smrg  }
216981418a27Smrg}
217081418a27SmrgPOST_SYSCALL(__sigsuspend14)(long long res, void *set_) {
217181418a27Smrg  if (set_) {
217281418a27Smrg    PRE_READ(set_, sizeof(__sanitizer_sigset_t));
217381418a27Smrg  }
217481418a27Smrg}
217581418a27SmrgPRE_SYSCALL(compat_16___sigreturn14)(void *sigcntxp_) { /* TODO */ }
217681418a27SmrgPOST_SYSCALL(compat_16___sigreturn14)(long long res, void *sigcntxp_) {
217781418a27Smrg  /* TODO */
217881418a27Smrg}
217981418a27SmrgPRE_SYSCALL(__getcwd)(void *bufp_, long long length_) { /* Nothing to do */ }
218081418a27SmrgPOST_SYSCALL(__getcwd)(long long res, void *bufp_, long long length_) {
218181418a27Smrg  /* Nothing to do */
218281418a27Smrg}
218381418a27SmrgPRE_SYSCALL(fchroot)(long long fd_) { /* Nothing to do */ }
218481418a27SmrgPOST_SYSCALL(fchroot)(long long res, long long fd_) { /* Nothing to do */ }
218581418a27SmrgPRE_SYSCALL(compat_30_fhopen)(void *fhp_, long long flags_) { /* TODO */ }
218681418a27SmrgPOST_SYSCALL(compat_30_fhopen)(long long res, void *fhp_, long long flags_) {
218781418a27Smrg  /* TODO */
218881418a27Smrg}
218981418a27SmrgPRE_SYSCALL(compat_30_fhstat)(void *fhp_, void *sb_) { /* TODO */ }
219081418a27SmrgPOST_SYSCALL(compat_30_fhstat)(long long res, void *fhp_, void *sb_) {
219181418a27Smrg  /* TODO */
219281418a27Smrg}
219381418a27SmrgPRE_SYSCALL(compat_20_fhstatfs)(void *fhp_, void *buf_) { /* TODO */ }
219481418a27SmrgPOST_SYSCALL(compat_20_fhstatfs)(long long res, void *fhp_, void *buf_) {
219581418a27Smrg  /* TODO */
219681418a27Smrg}
219781418a27SmrgPRE_SYSCALL(compat_50_____semctl13)
219881418a27Smrg(long long semid_, long long semnum_, long long cmd_, void *arg_) {
219981418a27Smrg  /* TODO */
220081418a27Smrg}
220181418a27SmrgPOST_SYSCALL(compat_50_____semctl13)
220281418a27Smrg(long long res, long long semid_, long long semnum_, long long cmd_,
220381418a27Smrg  void *arg_) {
220481418a27Smrg  /* TODO */
220581418a27Smrg}
220681418a27SmrgPRE_SYSCALL(compat_50___msgctl13)
220781418a27Smrg(long long msqid_, long long cmd_, void *buf_) {
220881418a27Smrg  /* TODO */
220981418a27Smrg}
221081418a27SmrgPOST_SYSCALL(compat_50___msgctl13)
221181418a27Smrg(long long res, long long msqid_, long long cmd_, void *buf_) {
221281418a27Smrg  /* TODO */
221381418a27Smrg}
221481418a27SmrgPRE_SYSCALL(compat_50___shmctl13)
221581418a27Smrg(long long shmid_, long long cmd_, void *buf_) {
221681418a27Smrg  /* TODO */
221781418a27Smrg}
221881418a27SmrgPOST_SYSCALL(compat_50___shmctl13)
221981418a27Smrg(long long res, long long shmid_, long long cmd_, void *buf_) {
222081418a27Smrg  /* TODO */
222181418a27Smrg}
222281418a27SmrgPRE_SYSCALL(lchflags)(void *path_, long long flags_) {
222381418a27Smrg  const char *path = (const char *)path_;
222481418a27Smrg  if (path) {
222581418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
222681418a27Smrg  }
222781418a27Smrg}
222881418a27SmrgPOST_SYSCALL(lchflags)(long long res, void *path_, long long flags_) {
222981418a27Smrg  const char *path = (const char *)path_;
223081418a27Smrg  if (path) {
223181418a27Smrg    POST_READ(path, __sanitizer::internal_strlen(path) + 1);
223281418a27Smrg  }
223381418a27Smrg}
223481418a27SmrgPRE_SYSCALL(issetugid)(void) { /* Nothing to do */ }
223581418a27SmrgPOST_SYSCALL(issetugid)(long long res) { /* Nothing to do */ }
223681418a27SmrgPRE_SYSCALL(utrace)(void *label_, void *addr_, long long len_) {
223781418a27Smrg  const char *label = (const char *)label_;
223881418a27Smrg  if (label) {
223981418a27Smrg    PRE_READ(label, __sanitizer::internal_strlen(label) + 1);
224081418a27Smrg  }
224181418a27Smrg  if (addr_) {
224281418a27Smrg    PRE_READ(addr_, len_);
224381418a27Smrg  }
224481418a27Smrg}
224581418a27SmrgPOST_SYSCALL(utrace)(long long res, void *label_, void *addr_, long long len_) {
224681418a27Smrg  const char *label = (const char *)label_;
224781418a27Smrg  if (label) {
224881418a27Smrg    POST_READ(label, __sanitizer::internal_strlen(label) + 1);
224981418a27Smrg  }
225081418a27Smrg  if (addr_) {
225181418a27Smrg    POST_READ(addr_, len_);
225281418a27Smrg  }
225381418a27Smrg}
225481418a27SmrgPRE_SYSCALL(getcontext)(void *ucp_) { /* Nothing to do */ }
225581418a27SmrgPOST_SYSCALL(getcontext)(long long res, void *ucp_) { /* Nothing to do */ }
225681418a27SmrgPRE_SYSCALL(setcontext)(void *ucp_) {
225781418a27Smrg  if (ucp_) {
225881418a27Smrg    PRE_READ(ucp_, ucontext_t_sz);
225981418a27Smrg  }
226081418a27Smrg}
226181418a27SmrgPOST_SYSCALL(setcontext)(long long res, void *ucp_) {}
226281418a27SmrgPRE_SYSCALL(_lwp_create)(void *ucp_, long long flags_, void *new_lwp_) {
226381418a27Smrg  if (ucp_) {
226481418a27Smrg    PRE_READ(ucp_, ucontext_t_sz);
226581418a27Smrg  }
226681418a27Smrg}
226781418a27SmrgPOST_SYSCALL(_lwp_create)
226881418a27Smrg(long long res, void *ucp_, long long flags_, void *new_lwp_) {}
226981418a27SmrgPRE_SYSCALL(_lwp_exit)(void) { /* Nothing to do */ }
227081418a27SmrgPOST_SYSCALL(_lwp_exit)(long long res) { /* Nothing to do */ }
227181418a27SmrgPRE_SYSCALL(_lwp_self)(void) { /* Nothing to do */ }
227281418a27SmrgPOST_SYSCALL(_lwp_self)(long long res) { /* Nothing to do */ }
227381418a27SmrgPRE_SYSCALL(_lwp_wait)(long long wait_for_, void *departed_) {
227481418a27Smrg  /* Nothing to do */
227581418a27Smrg}
227681418a27SmrgPOST_SYSCALL(_lwp_wait)(long long res, long long wait_for_, void *departed_) {
227781418a27Smrg  /* Nothing to do */
227881418a27Smrg}
227981418a27SmrgPRE_SYSCALL(_lwp_suspend)(long long target_) { /* Nothing to do */ }
228081418a27SmrgPOST_SYSCALL(_lwp_suspend)(long long res, long long target_) {
228181418a27Smrg  /* Nothing to do */
228281418a27Smrg}
228381418a27SmrgPRE_SYSCALL(_lwp_continue)(long long target_) { /* Nothing to do */ }
228481418a27SmrgPOST_SYSCALL(_lwp_continue)(long long res, long long target_) {
228581418a27Smrg  /* Nothing to do */
228681418a27Smrg}
228781418a27SmrgPRE_SYSCALL(_lwp_wakeup)(long long target_) { /* Nothing to do */ }
228881418a27SmrgPOST_SYSCALL(_lwp_wakeup)(long long res, long long target_) {
228981418a27Smrg  /* Nothing to do */
229081418a27Smrg}
229181418a27SmrgPRE_SYSCALL(_lwp_getprivate)(void) { /* Nothing to do */ }
229281418a27SmrgPOST_SYSCALL(_lwp_getprivate)(long long res) { /* Nothing to do */ }
229381418a27SmrgPRE_SYSCALL(_lwp_setprivate)(void *ptr_) { /* Nothing to do */ }
229481418a27SmrgPOST_SYSCALL(_lwp_setprivate)(long long res, void *ptr_) { /* Nothing to do */ }
229581418a27SmrgPRE_SYSCALL(_lwp_kill)(long long target_, long long signo_) {
229681418a27Smrg  /* Nothing to do */
229781418a27Smrg}
229881418a27SmrgPOST_SYSCALL(_lwp_kill)(long long res, long long target_, long long signo_) {
229981418a27Smrg  /* Nothing to do */
230081418a27Smrg}
230181418a27SmrgPRE_SYSCALL(_lwp_detach)(long long target_) { /* Nothing to do */ }
230281418a27SmrgPOST_SYSCALL(_lwp_detach)(long long res, long long target_) {
230381418a27Smrg  /* Nothing to do */
230481418a27Smrg}
230581418a27SmrgPRE_SYSCALL(compat_50__lwp_park)
230681418a27Smrg(void *ts_, long long unpark_, void *hint_, void *unparkhint_) {
230781418a27Smrg  /* TODO */
230881418a27Smrg}
230981418a27SmrgPOST_SYSCALL(compat_50__lwp_park)
231081418a27Smrg(long long res, void *ts_, long long unpark_, void *hint_, void *unparkhint_) {
231181418a27Smrg  /* TODO */
231281418a27Smrg}
231381418a27SmrgPRE_SYSCALL(_lwp_unpark)(long long target_, void *hint_) { /* Nothing to do */ }
231481418a27SmrgPOST_SYSCALL(_lwp_unpark)(long long res, long long target_, void *hint_) {
231581418a27Smrg  /* Nothing to do */
231681418a27Smrg}
231781418a27SmrgPRE_SYSCALL(_lwp_unpark_all)(void *targets_, long long ntargets_, void *hint_) {
231881418a27Smrg  if (targets_) {
231981418a27Smrg    PRE_READ(targets_, ntargets_ * sizeof(__sanitizer_lwpid_t));
232081418a27Smrg  }
232181418a27Smrg}
232281418a27SmrgPOST_SYSCALL(_lwp_unpark_all)
232381418a27Smrg(long long res, void *targets_, long long ntargets_, void *hint_) {}
232481418a27SmrgPRE_SYSCALL(_lwp_setname)(long long target_, void *name_) {
232581418a27Smrg  const char *name = (const char *)name_;
232681418a27Smrg  if (name) {
232781418a27Smrg    PRE_READ(name, __sanitizer::internal_strlen(name) + 1);
232881418a27Smrg  }
232981418a27Smrg}
233081418a27SmrgPOST_SYSCALL(_lwp_setname)(long long res, long long target_, void *name_) {
233181418a27Smrg  const char *name = (const char *)name_;
233281418a27Smrg  if (name) {
233381418a27Smrg    POST_READ(name, __sanitizer::internal_strlen(name) + 1);
233481418a27Smrg  }
233581418a27Smrg}
233681418a27SmrgPRE_SYSCALL(_lwp_getname)(long long target_, void *name_, long long len_) {
233781418a27Smrg  /* Nothing to do */
233881418a27Smrg}
233981418a27SmrgPOST_SYSCALL(_lwp_getname)
234081418a27Smrg(long long res, long long target_, void *name_, long long len_) {
234181418a27Smrg  /* Nothing to do */
234281418a27Smrg}
234381418a27SmrgPRE_SYSCALL(_lwp_ctl)(long long features_, void **address_) {
234481418a27Smrg  /* Nothing to do */
234581418a27Smrg}
234681418a27SmrgPOST_SYSCALL(_lwp_ctl)(long long res, long long features_, void **address_) {
234781418a27Smrg  /* Nothing to do */
234881418a27Smrg}
234981418a27Smrg/* syscall 326 has been skipped */
235081418a27Smrg/* syscall 327 has been skipped */
235181418a27Smrg/* syscall 328 has been skipped */
235281418a27Smrg/* syscall 329 has been skipped */
235381418a27SmrgPRE_SYSCALL(compat_60_sa_register)
235481418a27Smrg(void *newv_, void **oldv_, long long flags_, long long stackinfo_offset_) {
235581418a27Smrg  /* TODO */
235681418a27Smrg}
235781418a27SmrgPOST_SYSCALL(compat_60_sa_register)
235881418a27Smrg(long long res, void *newv_, void **oldv_, long long flags_,
235981418a27Smrg  long long stackinfo_offset_) {
236081418a27Smrg  /* TODO */
236181418a27Smrg}
236281418a27SmrgPRE_SYSCALL(compat_60_sa_stacks)(long long num_, void *stacks_) { /* TODO */ }
236381418a27SmrgPOST_SYSCALL(compat_60_sa_stacks)
236481418a27Smrg(long long res, long long num_, void *stacks_) {
236581418a27Smrg  /* TODO */
236681418a27Smrg}
236781418a27SmrgPRE_SYSCALL(compat_60_sa_enable)(void) { /* TODO */ }
236881418a27SmrgPOST_SYSCALL(compat_60_sa_enable)(long long res) { /* TODO */ }
236981418a27SmrgPRE_SYSCALL(compat_60_sa_setconcurrency)(long long concurrency_) { /* TODO */ }
237081418a27SmrgPOST_SYSCALL(compat_60_sa_setconcurrency)
237181418a27Smrg(long long res, long long concurrency_) {
237281418a27Smrg  /* TODO */
237381418a27Smrg}
237481418a27SmrgPRE_SYSCALL(compat_60_sa_yield)(void) { /* TODO */ }
237581418a27SmrgPOST_SYSCALL(compat_60_sa_yield)(long long res) { /* TODO */ }
237681418a27SmrgPRE_SYSCALL(compat_60_sa_preempt)(long long sa_id_) { /* TODO */ }
237781418a27SmrgPOST_SYSCALL(compat_60_sa_preempt)(long long res, long long sa_id_) {
237881418a27Smrg  /* TODO */
237981418a27Smrg}
238081418a27Smrg/* syscall 336 has been skipped */
238181418a27Smrg/* syscall 337 has been skipped */
238281418a27Smrg/* syscall 338 has been skipped */
238381418a27Smrg/* syscall 339 has been skipped */
238481418a27SmrgPRE_SYSCALL(__sigaction_sigtramp)
238581418a27Smrg(long long signum_, void *nsa_, void *osa_, void *tramp_, long long vers_) {
238681418a27Smrg  if (nsa_) {
238781418a27Smrg    PRE_READ(nsa_, sizeof(__sanitizer_sigaction));
238881418a27Smrg  }
238981418a27Smrg}
239081418a27SmrgPOST_SYSCALL(__sigaction_sigtramp)
239181418a27Smrg(long long res, long long signum_, void *nsa_, void *osa_, void *tramp_,
239281418a27Smrg  long long vers_) {
239381418a27Smrg  if (nsa_) {
239481418a27Smrg    PRE_READ(nsa_, sizeof(__sanitizer_sigaction));
239581418a27Smrg  }
239681418a27Smrg}
23977bb5462dSkamil/* syscall 341 has been skipped */
23987bb5462dSkamil/* syscall 342 has been skipped */
239981418a27SmrgPRE_SYSCALL(rasctl)(void *addr_, long long len_, long long op_) {
240081418a27Smrg  /* Nothing to do */
240181418a27Smrg}
240281418a27SmrgPOST_SYSCALL(rasctl)
240381418a27Smrg(long long res, void *addr_, long long len_, long long op_) {
240481418a27Smrg  /* Nothing to do */
240581418a27Smrg}
240681418a27SmrgPRE_SYSCALL(kqueue)(void) { /* Nothing to do */ }
240781418a27SmrgPOST_SYSCALL(kqueue)(long long res) { /* Nothing to do */ }
240881418a27SmrgPRE_SYSCALL(compat_50_kevent)
240981418a27Smrg(long long fd_, void *changelist_, long long nchanges_, void *eventlist_,
241081418a27Smrg  long long nevents_, void *timeout_) {
241181418a27Smrg  /* TODO */
241281418a27Smrg}
241381418a27SmrgPOST_SYSCALL(compat_50_kevent)
241481418a27Smrg(long long res, long long fd_, void *changelist_, long long nchanges_,
241581418a27Smrg  void *eventlist_, long long nevents_, void *timeout_) {
241681418a27Smrg  /* TODO */
241781418a27Smrg}
241881418a27SmrgPRE_SYSCALL(_sched_setparam)
241981418a27Smrg(long long pid_, long long lid_, long long policy_, void *params_) {
242081418a27Smrg  if (params_) {
242181418a27Smrg    PRE_READ(params_, struct_sched_param_sz);
242281418a27Smrg  }
242381418a27Smrg}
242481418a27SmrgPOST_SYSCALL(_sched_setparam)
242581418a27Smrg(long long res, long long pid_, long long lid_, long long policy_,
242681418a27Smrg  void *params_) {
242781418a27Smrg  if (params_) {
242881418a27Smrg    PRE_READ(params_, struct_sched_param_sz);
242981418a27Smrg  }
243081418a27Smrg}
243181418a27SmrgPRE_SYSCALL(_sched_getparam)
243281418a27Smrg(long long pid_, long long lid_, void *policy_, void *params_) {
243381418a27Smrg  /* Nothing to do */
243481418a27Smrg}
243581418a27SmrgPOST_SYSCALL(_sched_getparam)
243681418a27Smrg(long long res, long long pid_, long long lid_, void *policy_, void *params_) {
243781418a27Smrg  /* Nothing to do */
243881418a27Smrg}
243981418a27SmrgPRE_SYSCALL(_sched_setaffinity)
244081418a27Smrg(long long pid_, long long lid_, long long size_, void *cpuset_) {
244181418a27Smrg  if (cpuset_) {
244281418a27Smrg    PRE_READ(cpuset_, size_);
244381418a27Smrg  }
244481418a27Smrg}
244581418a27SmrgPOST_SYSCALL(_sched_setaffinity)
244681418a27Smrg(long long res, long long pid_, long long lid_, long long size_,
244781418a27Smrg  void *cpuset_) {
244881418a27Smrg  if (cpuset_) {
244981418a27Smrg    PRE_READ(cpuset_, size_);
245081418a27Smrg  }
245181418a27Smrg}
245281418a27SmrgPRE_SYSCALL(_sched_getaffinity)
245381418a27Smrg(long long pid_, long long lid_, long long size_, void *cpuset_) {
245481418a27Smrg  /* Nothing to do */
245581418a27Smrg}
245681418a27SmrgPOST_SYSCALL(_sched_getaffinity)
245781418a27Smrg(long long res, long long pid_, long long lid_, long long size_,
245881418a27Smrg  void *cpuset_) {
245981418a27Smrg  /* Nothing to do */
246081418a27Smrg}
246181418a27SmrgPRE_SYSCALL(sched_yield)(void) { /* Nothing to do */ }
246281418a27SmrgPOST_SYSCALL(sched_yield)(long long res) { /* Nothing to do */ }
246381418a27SmrgPRE_SYSCALL(_sched_protect)(long long priority_) { /* Nothing to do */ }
246481418a27SmrgPOST_SYSCALL(_sched_protect)(long long res, long long priority_) {
246581418a27Smrg  /* Nothing to do */
246681418a27Smrg}
246781418a27Smrg/* syscall 352 has been skipped */
246881418a27Smrg/* syscall 353 has been skipped */
246981418a27SmrgPRE_SYSCALL(fsync_range)
247081418a27Smrg(long long fd_, long long flags_, long long start_, long long length_) {
247181418a27Smrg  /* Nothing to do */
247281418a27Smrg}
247381418a27SmrgPOST_SYSCALL(fsync_range)
247481418a27Smrg(long long res, long long fd_, long long flags_, long long start_,
247581418a27Smrg  long long length_) {
247681418a27Smrg  /* Nothing to do */
247781418a27Smrg}
247881418a27SmrgPRE_SYSCALL(uuidgen)(void *store_, long long count_) { /* Nothing to do */ }
247981418a27SmrgPOST_SYSCALL(uuidgen)(long long res, void *store_, long long count_) {
248081418a27Smrg  /* Nothing to do */
248181418a27Smrg}
24827bb5462dSkamilPRE_SYSCALL(compat_90_getvfsstat)
24837bb5462dSkamil(void *buf_, long long bufsize_, long long flags_) {
248481418a27Smrg  /* Nothing to do */
248581418a27Smrg}
24867bb5462dSkamilPOST_SYSCALL(compat_90_getvfsstat)
248781418a27Smrg(long long res, void *buf_, long long bufsize_, long long flags_) {
248881418a27Smrg  /* Nothing to do */
248981418a27Smrg}
24907bb5462dSkamilPRE_SYSCALL(compat_90_statvfs1)(void *path_, void *buf_, long long flags_) {
249181418a27Smrg  const char *path = (const char *)path_;
249281418a27Smrg  if (path) {
249381418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
249481418a27Smrg  }
249581418a27Smrg}
24967bb5462dSkamilPOST_SYSCALL(compat_90_statvfs1)
249781418a27Smrg(long long res, void *path_, void *buf_, long long flags_) {
249881418a27Smrg  const char *path = (const char *)path_;
249981418a27Smrg  if (path) {
250081418a27Smrg    POST_READ(path, __sanitizer::internal_strlen(path) + 1);
250181418a27Smrg  }
250281418a27Smrg}
25037bb5462dSkamilPRE_SYSCALL(compat_90_fstatvfs1)(long long fd_, void *buf_, long long flags_) {
250481418a27Smrg  /* Nothing to do */
250581418a27Smrg}
25067bb5462dSkamilPOST_SYSCALL(compat_90_fstatvfs1)
250781418a27Smrg(long long res, long long fd_, void *buf_, long long flags_) {
250881418a27Smrg  /* Nothing to do */
250981418a27Smrg}
251081418a27SmrgPRE_SYSCALL(compat_30_fhstatvfs1)(void *fhp_, void *buf_, long long flags_) {
251181418a27Smrg  /* TODO */
251281418a27Smrg}
251381418a27SmrgPOST_SYSCALL(compat_30_fhstatvfs1)
251481418a27Smrg(long long res, void *fhp_, void *buf_, long long flags_) {
251581418a27Smrg  /* TODO */
251681418a27Smrg}
251781418a27SmrgPRE_SYSCALL(extattrctl)
251881418a27Smrg(void *path_, long long cmd_, void *filename_, long long attrnamespace_,
251981418a27Smrg  void *attrname_) {
252081418a27Smrg  const char *path = (const char *)path_;
252181418a27Smrg  if (path) {
252281418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
252381418a27Smrg  }
252481418a27Smrg}
252581418a27SmrgPOST_SYSCALL(extattrctl)
252681418a27Smrg(long long res, void *path_, long long cmd_, void *filename_,
252781418a27Smrg  long long attrnamespace_, void *attrname_) {
252881418a27Smrg  const char *path = (const char *)path_;
252981418a27Smrg  if (path) {
253081418a27Smrg    POST_READ(path, __sanitizer::internal_strlen(path) + 1);
253181418a27Smrg  }
253281418a27Smrg}
253381418a27SmrgPRE_SYSCALL(extattr_set_file)
253481418a27Smrg(void *path_, long long attrnamespace_, void *attrname_, void *data_,
253581418a27Smrg  long long nbytes_) {
253681418a27Smrg  const char *path = (const char *)path_;
253781418a27Smrg  if (path) {
253881418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
253981418a27Smrg  }
254081418a27Smrg}
254181418a27SmrgPOST_SYSCALL(extattr_set_file)
254281418a27Smrg(long long res, void *path_, long long attrnamespace_, void *attrname_,
254381418a27Smrg  void *data_, long long nbytes_) {
254481418a27Smrg  const char *path = (const char *)path_;
254581418a27Smrg  if (path) {
254681418a27Smrg    POST_READ(path, __sanitizer::internal_strlen(path) + 1);
254781418a27Smrg  }
254881418a27Smrg}
254981418a27SmrgPRE_SYSCALL(extattr_get_file)
255081418a27Smrg(void *path_, long long attrnamespace_, void *attrname_, void *data_,
255181418a27Smrg  long long nbytes_) {
255281418a27Smrg  const char *path = (const char *)path_;
255381418a27Smrg  if (path) {
255481418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
255581418a27Smrg  }
255681418a27Smrg}
255781418a27SmrgPOST_SYSCALL(extattr_get_file)
255881418a27Smrg(long long res, void *path_, long long attrnamespace_, void *attrname_,
255981418a27Smrg  void *data_, long long nbytes_) {
256081418a27Smrg  const char *path = (const char *)path_;
256181418a27Smrg  if (path) {
256281418a27Smrg    POST_READ(path, __sanitizer::internal_strlen(path) + 1);
256381418a27Smrg  }
256481418a27Smrg}
256581418a27SmrgPRE_SYSCALL(extattr_delete_file)
256681418a27Smrg(void *path_, long long attrnamespace_, void *attrname_) {
256781418a27Smrg  const char *path = (const char *)path_;
256881418a27Smrg  if (path) {
256981418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
257081418a27Smrg  }
257181418a27Smrg}
257281418a27SmrgPOST_SYSCALL(extattr_delete_file)
257381418a27Smrg(long long res, void *path_, long long attrnamespace_, void *attrname_) {
257481418a27Smrg  const char *path = (const char *)path_;
257581418a27Smrg  if (path) {
257681418a27Smrg    POST_READ(path, __sanitizer::internal_strlen(path) + 1);
257781418a27Smrg  }
257881418a27Smrg}
257981418a27SmrgPRE_SYSCALL(extattr_set_fd)
258081418a27Smrg(long long fd_, long long attrnamespace_, void *attrname_, void *data_,
258181418a27Smrg  long long nbytes_) {
258281418a27Smrg  /* TODO */
258381418a27Smrg}
258481418a27SmrgPOST_SYSCALL(extattr_set_fd)
258581418a27Smrg(long long res, long long fd_, long long attrnamespace_, void *attrname_,
258681418a27Smrg  void *data_, long long nbytes_) {
258781418a27Smrg  /* TODO */
258881418a27Smrg}
258981418a27SmrgPRE_SYSCALL(extattr_get_fd)
259081418a27Smrg(long long fd_, long long attrnamespace_, void *attrname_, void *data_,
259181418a27Smrg  long long nbytes_) {
259281418a27Smrg  /* TODO */
259381418a27Smrg}
259481418a27SmrgPOST_SYSCALL(extattr_get_fd)
259581418a27Smrg(long long res, long long fd_, long long attrnamespace_, void *attrname_,
259681418a27Smrg  void *data_, long long nbytes_) {
259781418a27Smrg  /* TODO */
259881418a27Smrg}
259981418a27SmrgPRE_SYSCALL(extattr_delete_fd)
260081418a27Smrg(long long fd_, long long attrnamespace_, void *attrname_) {
260181418a27Smrg  /* TODO */
260281418a27Smrg}
260381418a27SmrgPOST_SYSCALL(extattr_delete_fd)
260481418a27Smrg(long long res, long long fd_, long long attrnamespace_, void *attrname_) {
260581418a27Smrg  /* TODO */
260681418a27Smrg}
260781418a27SmrgPRE_SYSCALL(extattr_set_link)
260881418a27Smrg(void *path_, long long attrnamespace_, void *attrname_, void *data_,
260981418a27Smrg  long long nbytes_) {
261081418a27Smrg  const char *path = (const char *)path_;
261181418a27Smrg  if (path) {
261281418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
261381418a27Smrg  }
261481418a27Smrg}
261581418a27SmrgPOST_SYSCALL(extattr_set_link)
261681418a27Smrg(long long res, void *path_, long long attrnamespace_, void *attrname_,
261781418a27Smrg  void *data_, long long nbytes_) {
261881418a27Smrg  const char *path = (const char *)path_;
261981418a27Smrg  if (path) {
262081418a27Smrg    POST_READ(path, __sanitizer::internal_strlen(path) + 1);
262181418a27Smrg  }
262281418a27Smrg}
262381418a27SmrgPRE_SYSCALL(extattr_get_link)
262481418a27Smrg(void *path_, long long attrnamespace_, void *attrname_, void *data_,
262581418a27Smrg  long long nbytes_) {
262681418a27Smrg  const char *path = (const char *)path_;
262781418a27Smrg  if (path) {
262881418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
262981418a27Smrg  }
263081418a27Smrg}
263181418a27SmrgPOST_SYSCALL(extattr_get_link)
263281418a27Smrg(long long res, void *path_, long long attrnamespace_, void *attrname_,
263381418a27Smrg  void *data_, long long nbytes_) {
263481418a27Smrg  const char *path = (const char *)path_;
263581418a27Smrg  if (path) {
263681418a27Smrg    POST_READ(path, __sanitizer::internal_strlen(path) + 1);
263781418a27Smrg  }
263881418a27Smrg}
263981418a27SmrgPRE_SYSCALL(extattr_delete_link)
264081418a27Smrg(void *path_, long long attrnamespace_, void *attrname_) {
264181418a27Smrg  const char *path = (const char *)path_;
264281418a27Smrg  if (path) {
264381418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
264481418a27Smrg  }
264581418a27Smrg}
264681418a27SmrgPOST_SYSCALL(extattr_delete_link)
264781418a27Smrg(long long res, void *path_, long long attrnamespace_, void *attrname_) {
264881418a27Smrg  const char *path = (const char *)path_;
264981418a27Smrg  if (path) {
265081418a27Smrg    POST_READ(path, __sanitizer::internal_strlen(path) + 1);
265181418a27Smrg  }
265281418a27Smrg}
265381418a27SmrgPRE_SYSCALL(extattr_list_fd)
265481418a27Smrg(long long fd_, long long attrnamespace_, void *data_, long long nbytes_) {
265581418a27Smrg  /* TODO */
265681418a27Smrg}
265781418a27SmrgPOST_SYSCALL(extattr_list_fd)
265881418a27Smrg(long long res, long long fd_, long long attrnamespace_, void *data_,
265981418a27Smrg  long long nbytes_) {
266081418a27Smrg  /* TODO */
266181418a27Smrg}
266281418a27SmrgPRE_SYSCALL(extattr_list_file)
266381418a27Smrg(void *path_, long long attrnamespace_, void *data_, long long nbytes_) {
266481418a27Smrg  const char *path = (const char *)path_;
266581418a27Smrg  if (path) {
266681418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
266781418a27Smrg  }
266881418a27Smrg}
266981418a27SmrgPOST_SYSCALL(extattr_list_file)
267081418a27Smrg(long long res, void *path_, long long attrnamespace_, void *data_,
267181418a27Smrg  long long nbytes_) {
267281418a27Smrg  const char *path = (const char *)path_;
267381418a27Smrg  if (path) {
267481418a27Smrg    POST_READ(path, __sanitizer::internal_strlen(path) + 1);
267581418a27Smrg  }
267681418a27Smrg}
267781418a27SmrgPRE_SYSCALL(extattr_list_link)
267881418a27Smrg(void *path_, long long attrnamespace_, void *data_, long long nbytes_) {
267981418a27Smrg  const char *path = (const char *)path_;
268081418a27Smrg  if (path) {
268181418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
268281418a27Smrg  }
268381418a27Smrg}
268481418a27SmrgPOST_SYSCALL(extattr_list_link)
268581418a27Smrg(long long res, void *path_, long long attrnamespace_, void *data_,
268681418a27Smrg  long long nbytes_) {
268781418a27Smrg  const char *path = (const char *)path_;
268881418a27Smrg  if (path) {
268981418a27Smrg    POST_READ(path, __sanitizer::internal_strlen(path) + 1);
269081418a27Smrg  }
269181418a27Smrg}
269281418a27SmrgPRE_SYSCALL(compat_50_pselect)
269381418a27Smrg(long long nd_, void *in_, void *ou_, void *ex_, void *ts_, void *mask_) {
269481418a27Smrg  /* TODO */
269581418a27Smrg}
269681418a27SmrgPOST_SYSCALL(compat_50_pselect)
269781418a27Smrg(long long res, long long nd_, void *in_, void *ou_, void *ex_, void *ts_,
269881418a27Smrg  void *mask_) {
269981418a27Smrg  /* TODO */
270081418a27Smrg}
270181418a27SmrgPRE_SYSCALL(compat_50_pollts)
270281418a27Smrg(void *fds_, long long nfds_, void *ts_, void *mask_) {
270381418a27Smrg  /* TODO */
270481418a27Smrg}
270581418a27SmrgPOST_SYSCALL(compat_50_pollts)
270681418a27Smrg(long long res, void *fds_, long long nfds_, void *ts_, void *mask_) {
270781418a27Smrg  /* TODO */
270881418a27Smrg}
270981418a27SmrgPRE_SYSCALL(setxattr)
271081418a27Smrg(void *path_, void *name_, void *value_, long long size_, long long flags_) {
271181418a27Smrg  const char *path = (const char *)path_;
271281418a27Smrg  if (path) {
271381418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
271481418a27Smrg  }
271581418a27Smrg}
271681418a27SmrgPOST_SYSCALL(setxattr)
271781418a27Smrg(long long res, void *path_, void *name_, void *value_, long long size_,
271881418a27Smrg  long long flags_) {
271981418a27Smrg  const char *path = (const char *)path_;
272081418a27Smrg  if (path) {
272181418a27Smrg    POST_READ(path, __sanitizer::internal_strlen(path) + 1);
272281418a27Smrg  }
272381418a27Smrg}
272481418a27SmrgPRE_SYSCALL(lsetxattr)
272581418a27Smrg(void *path_, void *name_, void *value_, long long size_, long long flags_) {
272681418a27Smrg  const char *path = (const char *)path_;
272781418a27Smrg  if (path) {
272881418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
272981418a27Smrg  }
273081418a27Smrg}
273181418a27SmrgPOST_SYSCALL(lsetxattr)
273281418a27Smrg(long long res, void *path_, void *name_, void *value_, long long size_,
273381418a27Smrg  long long flags_) {
273481418a27Smrg  const char *path = (const char *)path_;
273581418a27Smrg  if (path) {
273681418a27Smrg    POST_READ(path, __sanitizer::internal_strlen(path) + 1);
273781418a27Smrg  }
273881418a27Smrg}
273981418a27SmrgPRE_SYSCALL(fsetxattr)
274081418a27Smrg(long long fd_, void *name_, void *value_, long long size_, long long flags_) {
274181418a27Smrg  /* Nothing to do */
274281418a27Smrg}
274381418a27SmrgPOST_SYSCALL(fsetxattr)
274481418a27Smrg(long long res, long long fd_, void *name_, void *value_, long long size_,
274581418a27Smrg  long long flags_) {
274681418a27Smrg  /* Nothing to do */
274781418a27Smrg}
274881418a27SmrgPRE_SYSCALL(getxattr)(void *path_, void *name_, void *value_, long long size_) {
274981418a27Smrg  const char *path = (const char *)path_;
275081418a27Smrg  if (path) {
275181418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
275281418a27Smrg  }
275381418a27Smrg}
275481418a27SmrgPOST_SYSCALL(getxattr)
275581418a27Smrg(long long res, void *path_, void *name_, void *value_, long long size_) {
275681418a27Smrg  const char *path = (const char *)path_;
275781418a27Smrg  if (path) {
275881418a27Smrg    POST_READ(path, __sanitizer::internal_strlen(path) + 1);
275981418a27Smrg  }
276081418a27Smrg}
276181418a27SmrgPRE_SYSCALL(lgetxattr)
276281418a27Smrg(void *path_, void *name_, void *value_, long long size_) {
276381418a27Smrg  const char *path = (const char *)path_;
276481418a27Smrg  if (path) {
276581418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
276681418a27Smrg  }
276781418a27Smrg}
276881418a27SmrgPOST_SYSCALL(lgetxattr)
276981418a27Smrg(long long res, void *path_, void *name_, void *value_, long long size_) {
277081418a27Smrg  const char *path = (const char *)path_;
277181418a27Smrg  if (path) {
277281418a27Smrg    POST_READ(path, __sanitizer::internal_strlen(path) + 1);
277381418a27Smrg  }
277481418a27Smrg}
277581418a27SmrgPRE_SYSCALL(fgetxattr)
277681418a27Smrg(long long fd_, void *name_, void *value_, long long size_) {
277781418a27Smrg  /* Nothing to do */
277881418a27Smrg}
277981418a27SmrgPOST_SYSCALL(fgetxattr)
278081418a27Smrg(long long res, long long fd_, void *name_, void *value_, long long size_) {
278181418a27Smrg  /* Nothing to do */
278281418a27Smrg}
278381418a27SmrgPRE_SYSCALL(listxattr)(void *path_, void *list_, long long size_) {
278481418a27Smrg  const char *path = (const char *)path_;
278581418a27Smrg  if (path) {
278681418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
278781418a27Smrg  }
278881418a27Smrg}
278981418a27SmrgPOST_SYSCALL(listxattr)
279081418a27Smrg(long long res, void *path_, void *list_, long long size_) {
279181418a27Smrg  const char *path = (const char *)path_;
279281418a27Smrg  if (path) {
279381418a27Smrg    POST_READ(path, __sanitizer::internal_strlen(path) + 1);
279481418a27Smrg  }
279581418a27Smrg}
279681418a27SmrgPRE_SYSCALL(llistxattr)(void *path_, void *list_, long long size_) {
279781418a27Smrg  const char *path = (const char *)path_;
279881418a27Smrg  if (path) {
279981418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
280081418a27Smrg  }
280181418a27Smrg}
280281418a27SmrgPOST_SYSCALL(llistxattr)
280381418a27Smrg(long long res, void *path_, void *list_, long long size_) {
280481418a27Smrg  const char *path = (const char *)path_;
280581418a27Smrg  if (path) {
280681418a27Smrg    POST_READ(path, __sanitizer::internal_strlen(path) + 1);
280781418a27Smrg  }
280881418a27Smrg}
280981418a27SmrgPRE_SYSCALL(flistxattr)(long long fd_, void *list_, long long size_) {
281081418a27Smrg  /* TODO */
281181418a27Smrg}
281281418a27SmrgPOST_SYSCALL(flistxattr)
281381418a27Smrg(long long res, long long fd_, void *list_, long long size_) {
281481418a27Smrg  /* TODO */
281581418a27Smrg}
281681418a27SmrgPRE_SYSCALL(removexattr)(void *path_, void *name_) {
281781418a27Smrg  const char *path = (const char *)path_;
281881418a27Smrg  if (path) {
281981418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
282081418a27Smrg  }
282181418a27Smrg}
282281418a27SmrgPOST_SYSCALL(removexattr)(long long res, void *path_, void *name_) {
282381418a27Smrg  const char *path = (const char *)path_;
282481418a27Smrg  if (path) {
282581418a27Smrg    POST_READ(path, __sanitizer::internal_strlen(path) + 1);
282681418a27Smrg  }
282781418a27Smrg}
282881418a27SmrgPRE_SYSCALL(lremovexattr)(void *path_, void *name_) {
282981418a27Smrg  const char *path = (const char *)path_;
283081418a27Smrg  if (path) {
283181418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
283281418a27Smrg  }
283381418a27Smrg}
283481418a27SmrgPOST_SYSCALL(lremovexattr)(long long res, void *path_, void *name_) {
283581418a27Smrg  const char *path = (const char *)path_;
283681418a27Smrg  if (path) {
283781418a27Smrg    POST_READ(path, __sanitizer::internal_strlen(path) + 1);
283881418a27Smrg  }
283981418a27Smrg}
284081418a27SmrgPRE_SYSCALL(fremovexattr)(long long fd_, void *name_) { /* TODO */ }
284181418a27SmrgPOST_SYSCALL(fremovexattr)(long long res, long long fd_, void *name_) {
284281418a27Smrg  /* TODO */
284381418a27Smrg}
284481418a27SmrgPRE_SYSCALL(compat_50___stat30)(void *path_, void *ub_) { /* TODO */ }
284581418a27SmrgPOST_SYSCALL(compat_50___stat30)(long long res, void *path_, void *ub_) {
284681418a27Smrg  /* TODO */
284781418a27Smrg}
284881418a27SmrgPRE_SYSCALL(compat_50___fstat30)(long long fd_, void *sb_) { /* TODO */ }
284981418a27SmrgPOST_SYSCALL(compat_50___fstat30)(long long res, long long fd_, void *sb_) {
285081418a27Smrg  /* TODO */
285181418a27Smrg}
285281418a27SmrgPRE_SYSCALL(compat_50___lstat30)(void *path_, void *ub_) { /* TODO */ }
285381418a27SmrgPOST_SYSCALL(compat_50___lstat30)(long long res, void *path_, void *ub_) {
285481418a27Smrg  /* TODO */
285581418a27Smrg}
285681418a27SmrgPRE_SYSCALL(__getdents30)(long long fd_, void *buf_, long long count_) {
285781418a27Smrg  /* Nothing to do */
285881418a27Smrg}
285981418a27SmrgPOST_SYSCALL(__getdents30)
286081418a27Smrg(long long res, long long fd_, void *buf_, long long count_) {
286181418a27Smrg  /* Nothing to do */
286281418a27Smrg}
286381418a27SmrgPRE_SYSCALL(posix_fadvise)(long long) { /* Nothing to do */ }
286481418a27SmrgPOST_SYSCALL(posix_fadvise)(long long res, long long) { /* Nothing to do */ }
286581418a27SmrgPRE_SYSCALL(compat_30___fhstat30)(void *fhp_, void *sb_) { /* TODO */ }
286681418a27SmrgPOST_SYSCALL(compat_30___fhstat30)(long long res, void *fhp_, void *sb_) {
286781418a27Smrg  /* TODO */
286881418a27Smrg}
286981418a27SmrgPRE_SYSCALL(compat_50___ntp_gettime30)(void *ntvp_) { /* TODO */ }
287081418a27SmrgPOST_SYSCALL(compat_50___ntp_gettime30)(long long res, void *ntvp_) {
287181418a27Smrg  /* TODO */
287281418a27Smrg}
287381418a27SmrgPRE_SYSCALL(__socket30)
287481418a27Smrg(long long domain_, long long type_, long long protocol_) {
287581418a27Smrg  /* Nothing to do */
287681418a27Smrg}
287781418a27SmrgPOST_SYSCALL(__socket30)
287881418a27Smrg(long long res, long long domain_, long long type_, long long protocol_) {
287981418a27Smrg  /* Nothing to do */
288081418a27Smrg}
288181418a27SmrgPRE_SYSCALL(__getfh30)(void *fname_, void *fhp_, void *fh_size_) {
288281418a27Smrg  const char *fname = (const char *)fname_;
288381418a27Smrg  if (fname) {
288481418a27Smrg    PRE_READ(fname, __sanitizer::internal_strlen(fname) + 1);
288581418a27Smrg  }
288681418a27Smrg}
288781418a27SmrgPOST_SYSCALL(__getfh30)
288881418a27Smrg(long long res, void *fname_, void *fhp_, void *fh_size_) {
288981418a27Smrg  const char *fname = (const char *)fname_;
289081418a27Smrg  if (res == 0) {
289181418a27Smrg    if (fname) {
289281418a27Smrg      POST_READ(fname, __sanitizer::internal_strlen(fname) + 1);
289381418a27Smrg    }
289481418a27Smrg  }
289581418a27Smrg}
289681418a27SmrgPRE_SYSCALL(__fhopen40)(void *fhp_, long long fh_size_, long long flags_) {
289781418a27Smrg  if (fhp_) {
289881418a27Smrg    PRE_READ(fhp_, fh_size_);
289981418a27Smrg  }
290081418a27Smrg}
290181418a27SmrgPOST_SYSCALL(__fhopen40)
290281418a27Smrg(long long res, void *fhp_, long long fh_size_, long long flags_) {}
29037bb5462dSkamilPRE_SYSCALL(compat_90_fhstatvfs1)
290481418a27Smrg(void *fhp_, long long fh_size_, void *buf_, long long flags_) {
290581418a27Smrg  if (fhp_) {
290681418a27Smrg    PRE_READ(fhp_, fh_size_);
290781418a27Smrg  }
290881418a27Smrg}
29097bb5462dSkamilPOST_SYSCALL(compat_90_fhstatvfs1)
291081418a27Smrg(long long res, void *fhp_, long long fh_size_, void *buf_, long long flags_) {}
291181418a27SmrgPRE_SYSCALL(compat_50___fhstat40)(void *fhp_, long long fh_size_, void *sb_) {
291281418a27Smrg  if (fhp_) {
291381418a27Smrg    PRE_READ(fhp_, fh_size_);
291481418a27Smrg  }
291581418a27Smrg}
291681418a27SmrgPOST_SYSCALL(compat_50___fhstat40)
291781418a27Smrg(long long res, void *fhp_, long long fh_size_, void *sb_) {}
291881418a27SmrgPRE_SYSCALL(aio_cancel)(long long fildes_, void *aiocbp_) {
291981418a27Smrg  if (aiocbp_) {
292081418a27Smrg    PRE_READ(aiocbp_, sizeof(struct __sanitizer_aiocb));
292181418a27Smrg  }
292281418a27Smrg}
292381418a27SmrgPOST_SYSCALL(aio_cancel)(long long res, long long fildes_, void *aiocbp_) {}
292481418a27SmrgPRE_SYSCALL(aio_error)(void *aiocbp_) {
292581418a27Smrg  if (aiocbp_) {
292681418a27Smrg    PRE_READ(aiocbp_, sizeof(struct __sanitizer_aiocb));
292781418a27Smrg  }
292881418a27Smrg}
292981418a27SmrgPOST_SYSCALL(aio_error)(long long res, void *aiocbp_) {}
293081418a27SmrgPRE_SYSCALL(aio_fsync)(long long op_, void *aiocbp_) {
293181418a27Smrg  if (aiocbp_) {
293281418a27Smrg    PRE_READ(aiocbp_, sizeof(struct __sanitizer_aiocb));
293381418a27Smrg  }
293481418a27Smrg}
293581418a27SmrgPOST_SYSCALL(aio_fsync)(long long res, long long op_, void *aiocbp_) {}
293681418a27SmrgPRE_SYSCALL(aio_read)(void *aiocbp_) {
293781418a27Smrg  if (aiocbp_) {
293881418a27Smrg    PRE_READ(aiocbp_, sizeof(struct __sanitizer_aiocb));
293981418a27Smrg  }
294081418a27Smrg}
294181418a27SmrgPOST_SYSCALL(aio_read)(long long res, void *aiocbp_) {}
294281418a27SmrgPRE_SYSCALL(aio_return)(void *aiocbp_) {
294381418a27Smrg  if (aiocbp_) {
294481418a27Smrg    PRE_READ(aiocbp_, sizeof(struct __sanitizer_aiocb));
294581418a27Smrg  }
294681418a27Smrg}
294781418a27SmrgPOST_SYSCALL(aio_return)(long long res, void *aiocbp_) {}
294881418a27SmrgPRE_SYSCALL(compat_50_aio_suspend)
294981418a27Smrg(void *list_, long long nent_, void *timeout_) {
295081418a27Smrg  /* TODO */
295181418a27Smrg}
295281418a27SmrgPOST_SYSCALL(compat_50_aio_suspend)
295381418a27Smrg(long long res, void *list_, long long nent_, void *timeout_) {
295481418a27Smrg  /* TODO */
295581418a27Smrg}
295681418a27SmrgPRE_SYSCALL(aio_write)(void *aiocbp_) {
295781418a27Smrg  if (aiocbp_) {
295881418a27Smrg    PRE_READ(aiocbp_, sizeof(struct __sanitizer_aiocb));
295981418a27Smrg  }
296081418a27Smrg}
296181418a27SmrgPOST_SYSCALL(aio_write)(long long res, void *aiocbp_) {}
296281418a27SmrgPRE_SYSCALL(lio_listio)
296381418a27Smrg(long long mode_, void *list_, long long nent_, void *sig_) {
296481418a27Smrg  /* Nothing to do */
296581418a27Smrg}
296681418a27SmrgPOST_SYSCALL(lio_listio)
296781418a27Smrg(long long res, long long mode_, void *list_, long long nent_, void *sig_) {
296881418a27Smrg  /* Nothing to do */
296981418a27Smrg}
297081418a27Smrg/* syscall 407 has been skipped */
297181418a27Smrg/* syscall 408 has been skipped */
297281418a27Smrg/* syscall 409 has been skipped */
297381418a27SmrgPRE_SYSCALL(__mount50)
297481418a27Smrg(void *type_, void *path_, long long flags_, void *data_, long long data_len_) {
297581418a27Smrg  const char *type = (const char *)type_;
297681418a27Smrg  const char *path = (const char *)path_;
297781418a27Smrg  if (type) {
297881418a27Smrg    PRE_READ(type, __sanitizer::internal_strlen(type) + 1);
297981418a27Smrg  }
298081418a27Smrg  if (path) {
298181418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
298281418a27Smrg  }
298381418a27Smrg  if (data_) {
298481418a27Smrg    PRE_READ(data_, data_len_);
298581418a27Smrg  }
298681418a27Smrg}
298781418a27SmrgPOST_SYSCALL(__mount50)
298881418a27Smrg(long long res, void *type_, void *path_, long long flags_, void *data_,
298981418a27Smrg  long long data_len_) {
299081418a27Smrg  const char *type = (const char *)type_;
299181418a27Smrg  const char *path = (const char *)path_;
299281418a27Smrg  if (type) {
299381418a27Smrg    POST_READ(type, __sanitizer::internal_strlen(type) + 1);
299481418a27Smrg  }
299581418a27Smrg  if (path) {
299681418a27Smrg    POST_READ(path, __sanitizer::internal_strlen(path) + 1);
299781418a27Smrg  }
299881418a27Smrg  if (data_) {
299981418a27Smrg    POST_READ(data_, data_len_);
300081418a27Smrg  }
300181418a27Smrg}
300281418a27SmrgPRE_SYSCALL(mremap)
300381418a27Smrg(void *old_address_, long long old_size_, void *new_address_,
300481418a27Smrg  long long new_size_, long long flags_) {
300581418a27Smrg  /* Nothing to do */
300681418a27Smrg}
300781418a27SmrgPOST_SYSCALL(mremap)
300881418a27Smrg(long long res, void *old_address_, long long old_size_, void *new_address_,
300981418a27Smrg  long long new_size_, long long flags_) {
301081418a27Smrg  /* Nothing to do */
301181418a27Smrg}
301281418a27SmrgPRE_SYSCALL(pset_create)(void *psid_) { /* Nothing to do */ }
301381418a27SmrgPOST_SYSCALL(pset_create)(long long res, void *psid_) { /* Nothing to do */ }
301481418a27SmrgPRE_SYSCALL(pset_destroy)(long long psid_) { /* Nothing to do */ }
301581418a27SmrgPOST_SYSCALL(pset_destroy)(long long res, long long psid_) {
301681418a27Smrg  /* Nothing to do */
301781418a27Smrg}
301881418a27SmrgPRE_SYSCALL(pset_assign)(long long psid_, long long cpuid_, void *opsid_) {
301981418a27Smrg  /* Nothing to do */
302081418a27Smrg}
302181418a27SmrgPOST_SYSCALL(pset_assign)
302281418a27Smrg(long long res, long long psid_, long long cpuid_, void *opsid_) {
302381418a27Smrg  /* Nothing to do */
302481418a27Smrg}
302581418a27SmrgPRE_SYSCALL(_pset_bind)
302681418a27Smrg(long long idtype_, long long first_id_, long long second_id_, long long psid_,
302781418a27Smrg  void *opsid_) {
302881418a27Smrg  /* Nothing to do */
302981418a27Smrg}
303081418a27SmrgPOST_SYSCALL(_pset_bind)
303181418a27Smrg(long long res, long long idtype_, long long first_id_, long long second_id_,
303281418a27Smrg  long long psid_, void *opsid_) {
303381418a27Smrg  /* Nothing to do */
303481418a27Smrg}
303581418a27SmrgPRE_SYSCALL(__posix_fadvise50)
303681418a27Smrg(long long fd_, long long PAD_, long long offset_, long long len_,
303781418a27Smrg  long long advice_) {
303881418a27Smrg  /* Nothing to do */
303981418a27Smrg}
304081418a27SmrgPOST_SYSCALL(__posix_fadvise50)
304181418a27Smrg(long long res, long long fd_, long long PAD_, long long offset_,
304281418a27Smrg  long long len_, long long advice_) {
304381418a27Smrg  /* Nothing to do */
304481418a27Smrg}
304581418a27SmrgPRE_SYSCALL(__select50)
304681418a27Smrg(long long nd_, void *in_, void *ou_, void *ex_, void *tv_) {
304781418a27Smrg  /* Nothing to do */
304881418a27Smrg}
304981418a27SmrgPOST_SYSCALL(__select50)
305081418a27Smrg(long long res, long long nd_, void *in_, void *ou_, void *ex_, void *tv_) {
305181418a27Smrg  /* Nothing to do */
305281418a27Smrg}
305381418a27SmrgPRE_SYSCALL(__gettimeofday50)(void *tp_, void *tzp_) { /* Nothing to do */ }
305481418a27SmrgPOST_SYSCALL(__gettimeofday50)(long long res, void *tp_, void *tzp_) {
305581418a27Smrg  /* Nothing to do */
305681418a27Smrg}
305781418a27SmrgPRE_SYSCALL(__settimeofday50)(void *tv_, void *tzp_) {
305881418a27Smrg  if (tv_) {
305981418a27Smrg    PRE_READ(tv_, timeval_sz);
306081418a27Smrg  }
306181418a27Smrg  if (tzp_) {
306281418a27Smrg    PRE_READ(tzp_, struct_timezone_sz);
306381418a27Smrg  }
306481418a27Smrg}
306581418a27SmrgPOST_SYSCALL(__settimeofday50)(long long res, void *tv_, void *tzp_) {}
306681418a27SmrgPRE_SYSCALL(__utimes50)(void *path_, void *tptr_) {
306781418a27Smrg  struct __sanitizer_timespec **tptr = (struct __sanitizer_timespec **)tptr_;
306881418a27Smrg  const char *path = (const char *)path_;
306981418a27Smrg  if (path) {
307081418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
307181418a27Smrg  }
307281418a27Smrg  if (tptr) {
307381418a27Smrg    PRE_READ(tptr[0], struct_timespec_sz);
307481418a27Smrg    PRE_READ(tptr[1], struct_timespec_sz);
307581418a27Smrg  }
307681418a27Smrg}
307781418a27SmrgPOST_SYSCALL(__utimes50)(long long res, void *path_, void *tptr_) {}
307881418a27SmrgPRE_SYSCALL(__adjtime50)(void *delta_, void *olddelta_) {
307981418a27Smrg  if (delta_) {
308081418a27Smrg    PRE_READ(delta_, timeval_sz);
308181418a27Smrg  }
308281418a27Smrg}
308381418a27SmrgPOST_SYSCALL(__adjtime50)(long long res, void *delta_, void *olddelta_) {}
308481418a27SmrgPRE_SYSCALL(__lfs_segwait50)(void *fsidp_, void *tv_) { /* TODO */ }
308581418a27SmrgPOST_SYSCALL(__lfs_segwait50)(long long res, void *fsidp_, void *tv_) {
308681418a27Smrg  /* TODO */
308781418a27Smrg}
308881418a27SmrgPRE_SYSCALL(__futimes50)(long long fd_, void *tptr_) {
308981418a27Smrg  struct __sanitizer_timespec **tptr = (struct __sanitizer_timespec **)tptr_;
309081418a27Smrg  if (tptr) {
309181418a27Smrg    PRE_READ(tptr[0], struct_timespec_sz);
309281418a27Smrg    PRE_READ(tptr[1], struct_timespec_sz);
309381418a27Smrg  }
309481418a27Smrg}
309581418a27SmrgPOST_SYSCALL(__futimes50)(long long res, long long fd_, void *tptr_) {}
309681418a27SmrgPRE_SYSCALL(__lutimes50)(void *path_, void *tptr_) {
309781418a27Smrg  struct __sanitizer_timespec **tptr = (struct __sanitizer_timespec **)tptr_;
309881418a27Smrg  const char *path = (const char *)path_;
309981418a27Smrg  if (path) {
310081418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
310181418a27Smrg  }
310281418a27Smrg  if (tptr) {
310381418a27Smrg    PRE_READ(tptr[0], struct_timespec_sz);
310481418a27Smrg    PRE_READ(tptr[1], struct_timespec_sz);
310581418a27Smrg  }
310681418a27Smrg}
310781418a27SmrgPOST_SYSCALL(__lutimes50)(long long res, void *path_, void *tptr_) {
310881418a27Smrg  struct __sanitizer_timespec **tptr = (struct __sanitizer_timespec **)tptr_;
310981418a27Smrg  const char *path = (const char *)path_;
311081418a27Smrg  if (path) {
311181418a27Smrg    POST_READ(path, __sanitizer::internal_strlen(path) + 1);
311281418a27Smrg  }
311381418a27Smrg  if (tptr) {
311481418a27Smrg    POST_READ(tptr[0], struct_timespec_sz);
311581418a27Smrg    POST_READ(tptr[1], struct_timespec_sz);
311681418a27Smrg  }
311781418a27Smrg}
311881418a27SmrgPRE_SYSCALL(__setitimer50)(long long which_, void *itv_, void *oitv_) {
311981418a27Smrg  struct __sanitizer_itimerval *itv = (struct __sanitizer_itimerval *)itv_;
312081418a27Smrg  if (itv) {
312181418a27Smrg    PRE_READ(&itv->it_interval.tv_sec, sizeof(__sanitizer_time_t));
312281418a27Smrg    PRE_READ(&itv->it_interval.tv_usec, sizeof(__sanitizer_suseconds_t));
312381418a27Smrg    PRE_READ(&itv->it_value.tv_sec, sizeof(__sanitizer_time_t));
312481418a27Smrg    PRE_READ(&itv->it_value.tv_usec, sizeof(__sanitizer_suseconds_t));
312581418a27Smrg  }
312681418a27Smrg}
312781418a27SmrgPOST_SYSCALL(__setitimer50)
312881418a27Smrg(long long res, long long which_, void *itv_, void *oitv_) {}
312981418a27SmrgPRE_SYSCALL(__getitimer50)(long long which_, void *itv_) { /* Nothing to do */ }
313081418a27SmrgPOST_SYSCALL(__getitimer50)(long long res, long long which_, void *itv_) {
313181418a27Smrg  /* Nothing to do */
313281418a27Smrg}
313381418a27SmrgPRE_SYSCALL(__clock_gettime50)(long long clock_id_, void *tp_) {
313481418a27Smrg  /* Nothing to do */
313581418a27Smrg}
313681418a27SmrgPOST_SYSCALL(__clock_gettime50)(long long res, long long clock_id_, void *tp_) {
313781418a27Smrg  /* Nothing to do */
313881418a27Smrg}
313981418a27SmrgPRE_SYSCALL(__clock_settime50)(long long clock_id_, void *tp_) {
314081418a27Smrg  if (tp_) {
314181418a27Smrg    PRE_READ(tp_, struct_timespec_sz);
314281418a27Smrg  }
314381418a27Smrg}
314481418a27SmrgPOST_SYSCALL(__clock_settime50)
314581418a27Smrg(long long res, long long clock_id_, void *tp_) {}
314681418a27SmrgPRE_SYSCALL(__clock_getres50)(long long clock_id_, void *tp_) {
314781418a27Smrg  /* Nothing to do */
314881418a27Smrg}
314981418a27SmrgPOST_SYSCALL(__clock_getres50)(long long res, long long clock_id_, void *tp_) {
315081418a27Smrg  /* Nothing to do */
315181418a27Smrg}
315281418a27SmrgPRE_SYSCALL(__nanosleep50)(void *rqtp_, void *rmtp_) {
315381418a27Smrg  if (rqtp_) {
315481418a27Smrg    PRE_READ(rqtp_, struct_timespec_sz);
315581418a27Smrg  }
315681418a27Smrg}
315781418a27SmrgPOST_SYSCALL(__nanosleep50)(long long res, void *rqtp_, void *rmtp_) {}
315881418a27SmrgPRE_SYSCALL(____sigtimedwait50)(void *set_, void *info_, void *timeout_) {
315981418a27Smrg  if (set_) {
316081418a27Smrg    PRE_READ(set_, sizeof(__sanitizer_sigset_t));
316181418a27Smrg  }
316281418a27Smrg  if (timeout_) {
316381418a27Smrg    PRE_READ(timeout_, struct_timespec_sz);
316481418a27Smrg  }
316581418a27Smrg}
316681418a27SmrgPOST_SYSCALL(____sigtimedwait50)
316781418a27Smrg(long long res, void *set_, void *info_, void *timeout_) {}
316881418a27SmrgPRE_SYSCALL(__mq_timedsend50)
316981418a27Smrg(long long mqdes_, void *msg_ptr_, long long msg_len_, long long msg_prio_,
317081418a27Smrg  void *abs_timeout_) {
317181418a27Smrg  if (msg_ptr_) {
317281418a27Smrg    PRE_READ(msg_ptr_, msg_len_);
317381418a27Smrg  }
317481418a27Smrg  if (abs_timeout_) {
317581418a27Smrg    PRE_READ(abs_timeout_, struct_timespec_sz);
317681418a27Smrg  }
317781418a27Smrg}
317881418a27SmrgPOST_SYSCALL(__mq_timedsend50)
317981418a27Smrg(long long res, long long mqdes_, void *msg_ptr_, long long msg_len_,
318081418a27Smrg  long long msg_prio_, void *abs_timeout_) {}
318181418a27SmrgPRE_SYSCALL(__mq_timedreceive50)
318281418a27Smrg(long long mqdes_, void *msg_ptr_, long long msg_len_, void *msg_prio_,
318381418a27Smrg  void *abs_timeout_) {
318481418a27Smrg  if (msg_ptr_) {
318581418a27Smrg    PRE_READ(msg_ptr_, msg_len_);
318681418a27Smrg  }
318781418a27Smrg  if (abs_timeout_) {
318881418a27Smrg    PRE_READ(abs_timeout_, struct_timespec_sz);
318981418a27Smrg  }
319081418a27Smrg}
319181418a27SmrgPOST_SYSCALL(__mq_timedreceive50)
319281418a27Smrg(long long res, long long mqdes_, void *msg_ptr_, long long msg_len_,
319381418a27Smrg  void *msg_prio_, void *abs_timeout_) {}
319481418a27SmrgPRE_SYSCALL(compat_60__lwp_park)
319581418a27Smrg(void *ts_, long long unpark_, void *hint_, void *unparkhint_) {
319681418a27Smrg  /* TODO */
319781418a27Smrg}
319881418a27SmrgPOST_SYSCALL(compat_60__lwp_park)
319981418a27Smrg(long long res, void *ts_, long long unpark_, void *hint_, void *unparkhint_) {
320081418a27Smrg  /* TODO */
320181418a27Smrg}
320281418a27SmrgPRE_SYSCALL(__kevent50)
320381418a27Smrg(long long fd_, void *changelist_, long long nchanges_, void *eventlist_,
320481418a27Smrg  long long nevents_, void *timeout_) {
320581418a27Smrg  if (changelist_) {
320681418a27Smrg    PRE_READ(changelist_, nchanges_ * struct_kevent_sz);
320781418a27Smrg  }
320881418a27Smrg  if (timeout_) {
320981418a27Smrg    PRE_READ(timeout_, struct_timespec_sz);
321081418a27Smrg  }
321181418a27Smrg}
321281418a27SmrgPOST_SYSCALL(__kevent50)
321381418a27Smrg(long long res, long long fd_, void *changelist_, long long nchanges_,
321481418a27Smrg  void *eventlist_, long long nevents_, void *timeout_) {}
321581418a27SmrgPRE_SYSCALL(__pselect50)
321681418a27Smrg(long long nd_, void *in_, void *ou_, void *ex_, void *ts_, void *mask_) {
321781418a27Smrg  if (ts_) {
321881418a27Smrg    PRE_READ(ts_, struct_timespec_sz);
321981418a27Smrg  }
322081418a27Smrg  if (mask_) {
322181418a27Smrg    PRE_READ(mask_, sizeof(struct __sanitizer_sigset_t));
322281418a27Smrg  }
322381418a27Smrg}
322481418a27SmrgPOST_SYSCALL(__pselect50)
322581418a27Smrg(long long res, long long nd_, void *in_, void *ou_, void *ex_, void *ts_,
322681418a27Smrg  void *mask_) {}
322781418a27SmrgPRE_SYSCALL(__pollts50)(void *fds_, long long nfds_, void *ts_, void *mask_) {
322881418a27Smrg  if (ts_) {
322981418a27Smrg    PRE_READ(ts_, struct_timespec_sz);
323081418a27Smrg  }
323181418a27Smrg  if (mask_) {
323281418a27Smrg    PRE_READ(mask_, sizeof(struct __sanitizer_sigset_t));
323381418a27Smrg  }
323481418a27Smrg}
323581418a27SmrgPOST_SYSCALL(__pollts50)
323681418a27Smrg(long long res, void *fds_, long long nfds_, void *ts_, void *mask_) {}
323781418a27SmrgPRE_SYSCALL(__aio_suspend50)(void *list_, long long nent_, void *timeout_) {
323881418a27Smrg  int i;
323981418a27Smrg  const struct aiocb *const *list = (const struct aiocb *const *)list_;
324081418a27Smrg  if (list) {
324181418a27Smrg    for (i = 0; i < nent_; i++) {
324281418a27Smrg      if (list[i]) {
324381418a27Smrg        PRE_READ(list[i], sizeof(struct __sanitizer_aiocb));
324481418a27Smrg      }
324581418a27Smrg    }
324681418a27Smrg  }
324781418a27Smrg  if (timeout_) {
324881418a27Smrg    PRE_READ(timeout_, struct_timespec_sz);
324981418a27Smrg  }
325081418a27Smrg}
325181418a27SmrgPOST_SYSCALL(__aio_suspend50)
325281418a27Smrg(long long res, void *list_, long long nent_, void *timeout_) {}
325381418a27SmrgPRE_SYSCALL(__stat50)(void *path_, void *ub_) {
325481418a27Smrg  const char *path = (const char *)path_;
325581418a27Smrg  if (path) {
325681418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
325781418a27Smrg  }
325881418a27Smrg}
325981418a27SmrgPOST_SYSCALL(__stat50)(long long res, void *path_, void *ub_) {
326081418a27Smrg  const char *path = (const char *)path_;
326181418a27Smrg  if (res == 0) {
326281418a27Smrg    if (path) {
326381418a27Smrg      POST_READ(path, __sanitizer::internal_strlen(path) + 1);
326481418a27Smrg    }
326581418a27Smrg  }
326681418a27Smrg}
326781418a27SmrgPRE_SYSCALL(__fstat50)(long long fd_, void *sb_) { /* Nothing to do */ }
326881418a27SmrgPOST_SYSCALL(__fstat50)(long long res, long long fd_, void *sb_) {
326981418a27Smrg  /* Nothing to do */
327081418a27Smrg}
327181418a27SmrgPRE_SYSCALL(__lstat50)(void *path_, void *ub_) {
327281418a27Smrg  const char *path = (const char *)path_;
327381418a27Smrg  if (path) {
327481418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
327581418a27Smrg  }
327681418a27Smrg}
327781418a27SmrgPOST_SYSCALL(__lstat50)(long long res, void *path_, void *ub_) {
327881418a27Smrg  const char *path = (const char *)path_;
327981418a27Smrg  if (res == 0) {
328081418a27Smrg    if (path) {
328181418a27Smrg      POST_READ(path, __sanitizer::internal_strlen(path) + 1);
328281418a27Smrg    }
328381418a27Smrg  }
328481418a27Smrg}
328581418a27SmrgPRE_SYSCALL(____semctl50)
328681418a27Smrg(long long semid_, long long semnum_, long long cmd_, void *arg_) {
328781418a27Smrg  /* Nothing to do */
328881418a27Smrg}
328981418a27SmrgPOST_SYSCALL(____semctl50)
329081418a27Smrg(long long res, long long semid_, long long semnum_, long long cmd_,
329181418a27Smrg  void *arg_) {
329281418a27Smrg  /* Nothing to do */
329381418a27Smrg}
329481418a27SmrgPRE_SYSCALL(__shmctl50)(long long shmid_, long long cmd_, void *buf_) {
329581418a27Smrg  /* Nothing to do */
329681418a27Smrg}
329781418a27SmrgPOST_SYSCALL(__shmctl50)
329881418a27Smrg(long long res, long long shmid_, long long cmd_, void *buf_) {
329981418a27Smrg  /* Nothing to do */
330081418a27Smrg}
330181418a27SmrgPRE_SYSCALL(__msgctl50)(long long msqid_, long long cmd_, void *buf_) {
330281418a27Smrg  /* Nothing to do */
330381418a27Smrg}
330481418a27SmrgPOST_SYSCALL(__msgctl50)
330581418a27Smrg(long long res, long long msqid_, long long cmd_, void *buf_) {
330681418a27Smrg  /* Nothing to do */
330781418a27Smrg}
330881418a27SmrgPRE_SYSCALL(__getrusage50)(long long who_, void *rusage_) {
330981418a27Smrg  /* Nothing to do */
331081418a27Smrg}
331181418a27SmrgPOST_SYSCALL(__getrusage50)(long long res, long long who_, void *rusage_) {
331281418a27Smrg  /* Nothing to do */
331381418a27Smrg}
331481418a27SmrgPRE_SYSCALL(__timer_settime50)
331581418a27Smrg(long long timerid_, long long flags_, void *value_, void *ovalue_) {
331681418a27Smrg  struct __sanitizer_itimerval *value = (struct __sanitizer_itimerval *)value_;
331781418a27Smrg  if (value) {
331881418a27Smrg    PRE_READ(&value->it_interval.tv_sec, sizeof(__sanitizer_time_t));
331981418a27Smrg    PRE_READ(&value->it_interval.tv_usec, sizeof(__sanitizer_suseconds_t));
332081418a27Smrg    PRE_READ(&value->it_value.tv_sec, sizeof(__sanitizer_time_t));
332181418a27Smrg    PRE_READ(&value->it_value.tv_usec, sizeof(__sanitizer_suseconds_t));
332281418a27Smrg  }
332381418a27Smrg}
332481418a27SmrgPOST_SYSCALL(__timer_settime50)
332581418a27Smrg(long long res, long long timerid_, long long flags_, void *value_,
332681418a27Smrg  void *ovalue_) {
332781418a27Smrg  struct __sanitizer_itimerval *value = (struct __sanitizer_itimerval *)value_;
332881418a27Smrg  if (res == 0) {
332981418a27Smrg    if (value) {
333081418a27Smrg      POST_READ(&value->it_interval.tv_sec, sizeof(__sanitizer_time_t));
333181418a27Smrg      POST_READ(&value->it_interval.tv_usec, sizeof(__sanitizer_suseconds_t));
333281418a27Smrg      POST_READ(&value->it_value.tv_sec, sizeof(__sanitizer_time_t));
333381418a27Smrg      POST_READ(&value->it_value.tv_usec, sizeof(__sanitizer_suseconds_t));
333481418a27Smrg    }
333581418a27Smrg  }
333681418a27Smrg}
333781418a27SmrgPRE_SYSCALL(__timer_gettime50)(long long timerid_, void *value_) {
333881418a27Smrg  /* Nothing to do */
333981418a27Smrg}
334081418a27SmrgPOST_SYSCALL(__timer_gettime50)
334181418a27Smrg(long long res, long long timerid_, void *value_) {
334281418a27Smrg  /* Nothing to do */
334381418a27Smrg}
334481418a27Smrg#if defined(NTP) || !defined(_KERNEL_OPT)
334581418a27SmrgPRE_SYSCALL(__ntp_gettime50)(void *ntvp_) { /* Nothing to do */ }
334681418a27SmrgPOST_SYSCALL(__ntp_gettime50)(long long res, void *ntvp_) {
334781418a27Smrg  /* Nothing to do */
334881418a27Smrg}
334981418a27Smrg#else
335081418a27Smrg/* syscall 448 has been skipped */
335181418a27Smrg#endif
335281418a27SmrgPRE_SYSCALL(__wait450)
335381418a27Smrg(long long pid_, void *status_, long long options_, void *rusage_) {
335481418a27Smrg  /* Nothing to do */
335581418a27Smrg}
335681418a27SmrgPOST_SYSCALL(__wait450)
335781418a27Smrg(long long res, long long pid_, void *status_, long long options_,
335881418a27Smrg  void *rusage_) {
335981418a27Smrg  /* Nothing to do */
336081418a27Smrg}
336181418a27SmrgPRE_SYSCALL(__mknod50)(void *path_, long long mode_, long long dev_) {
336281418a27Smrg  const char *path = (const char *)path_;
336381418a27Smrg  if (path) {
336481418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
336581418a27Smrg  }
336681418a27Smrg}
336781418a27SmrgPOST_SYSCALL(__mknod50)
336881418a27Smrg(long long res, void *path_, long long mode_, long long dev_) {
336981418a27Smrg  const char *path = (const char *)path_;
337081418a27Smrg  if (res == 0) {
337181418a27Smrg    if (path) {
337281418a27Smrg      POST_READ(path, __sanitizer::internal_strlen(path) + 1);
337381418a27Smrg    }
337481418a27Smrg  }
337581418a27Smrg}
337681418a27SmrgPRE_SYSCALL(__fhstat50)(void *fhp_, long long fh_size_, void *sb_) {
337781418a27Smrg  if (fhp_) {
337881418a27Smrg    PRE_READ(fhp_, fh_size_);
337981418a27Smrg  }
338081418a27Smrg}
338181418a27SmrgPOST_SYSCALL(__fhstat50)
338281418a27Smrg(long long res, void *fhp_, long long fh_size_, void *sb_) {
338381418a27Smrg  if (res == 0) {
338481418a27Smrg    if (fhp_) {
338581418a27Smrg      POST_READ(fhp_, fh_size_);
338681418a27Smrg    }
338781418a27Smrg  }
338881418a27Smrg}
338981418a27Smrg/* syscall 452 has been skipped */
339081418a27SmrgPRE_SYSCALL(pipe2)(void *fildes_, long long flags_) { /* Nothing to do */ }
339181418a27SmrgPOST_SYSCALL(pipe2)(long long res, void *fildes_, long long flags_) {
339281418a27Smrg  /* Nothing to do */
339381418a27Smrg}
339481418a27SmrgPRE_SYSCALL(dup3)(long long from_, long long to_, long long flags_) {
339581418a27Smrg  /* Nothing to do */
339681418a27Smrg}
339781418a27SmrgPOST_SYSCALL(dup3)
339881418a27Smrg(long long res, long long from_, long long to_, long long flags_) {
339981418a27Smrg  /* Nothing to do */
340081418a27Smrg}
340181418a27SmrgPRE_SYSCALL(kqueue1)(long long flags_) { /* Nothing to do */ }
340281418a27SmrgPOST_SYSCALL(kqueue1)(long long res, long long flags_) { /* Nothing to do */ }
340381418a27SmrgPRE_SYSCALL(paccept)
340481418a27Smrg(long long s_, void *name_, void *anamelen_, void *mask_, long long flags_) {
340581418a27Smrg  if (mask_) {
340681418a27Smrg    PRE_READ(mask_, sizeof(__sanitizer_sigset_t));
340781418a27Smrg  }
340881418a27Smrg}
340981418a27SmrgPOST_SYSCALL(paccept)
341081418a27Smrg(long long res, long long s_, void *name_, void *anamelen_, void *mask_,
341181418a27Smrg  long long flags_) {
341281418a27Smrg  if (res >= 0) {
341381418a27Smrg    if (mask_) {
341481418a27Smrg      PRE_READ(mask_, sizeof(__sanitizer_sigset_t));
341581418a27Smrg    }
341681418a27Smrg  }
341781418a27Smrg}
341881418a27SmrgPRE_SYSCALL(linkat)
341981418a27Smrg(long long fd1_, void *name1_, long long fd2_, void *name2_, long long flags_) {
342081418a27Smrg  const char *name1 = (const char *)name1_;
342181418a27Smrg  const char *name2 = (const char *)name2_;
342281418a27Smrg  if (name1) {
342381418a27Smrg    PRE_READ(name1, __sanitizer::internal_strlen(name1) + 1);
342481418a27Smrg  }
342581418a27Smrg  if (name2) {
342681418a27Smrg    PRE_READ(name2, __sanitizer::internal_strlen(name2) + 1);
342781418a27Smrg  }
342881418a27Smrg}
342981418a27SmrgPOST_SYSCALL(linkat)
343081418a27Smrg(long long res, long long fd1_, void *name1_, long long fd2_, void *name2_,
343181418a27Smrg  long long flags_) {
343281418a27Smrg  const char *name1 = (const char *)name1_;
343381418a27Smrg  const char *name2 = (const char *)name2_;
343481418a27Smrg  if (res == 0) {
343581418a27Smrg    if (name1) {
343681418a27Smrg      POST_READ(name1, __sanitizer::internal_strlen(name1) + 1);
343781418a27Smrg    }
343881418a27Smrg    if (name2) {
343981418a27Smrg      POST_READ(name2, __sanitizer::internal_strlen(name2) + 1);
344081418a27Smrg    }
344181418a27Smrg  }
344281418a27Smrg}
344381418a27SmrgPRE_SYSCALL(renameat)
344481418a27Smrg(long long fromfd_, void *from_, long long tofd_, void *to_) {
344581418a27Smrg  const char *from = (const char *)from_;
344681418a27Smrg  const char *to = (const char *)to_;
344781418a27Smrg  if (from) {
344881418a27Smrg    PRE_READ(from, __sanitizer::internal_strlen(from) + 1);
344981418a27Smrg  }
345081418a27Smrg  if (to) {
345181418a27Smrg    PRE_READ(to, __sanitizer::internal_strlen(to) + 1);
345281418a27Smrg  }
345381418a27Smrg}
345481418a27SmrgPOST_SYSCALL(renameat)
345581418a27Smrg(long long res, long long fromfd_, void *from_, long long tofd_, void *to_) {
345681418a27Smrg  const char *from = (const char *)from_;
345781418a27Smrg  const char *to = (const char *)to_;
345881418a27Smrg  if (res == 0) {
345981418a27Smrg    if (from) {
346081418a27Smrg      POST_READ(from, __sanitizer::internal_strlen(from) + 1);
346181418a27Smrg    }
346281418a27Smrg    if (to) {
346381418a27Smrg      POST_READ(to, __sanitizer::internal_strlen(to) + 1);
346481418a27Smrg    }
346581418a27Smrg  }
346681418a27Smrg}
346781418a27SmrgPRE_SYSCALL(mkfifoat)(long long fd_, void *path_, long long mode_) {
346881418a27Smrg  const char *path = (const char *)path_;
346981418a27Smrg  if (path) {
347081418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
347181418a27Smrg  }
347281418a27Smrg}
347381418a27SmrgPOST_SYSCALL(mkfifoat)
347481418a27Smrg(long long res, long long fd_, void *path_, long long mode_) {
347581418a27Smrg  const char *path = (const char *)path_;
347681418a27Smrg  if (res == 0) {
347781418a27Smrg    if (path) {
347881418a27Smrg      POST_READ(path, __sanitizer::internal_strlen(path) + 1);
347981418a27Smrg    }
348081418a27Smrg  }
348181418a27Smrg}
348281418a27SmrgPRE_SYSCALL(mknodat)
348381418a27Smrg(long long fd_, void *path_, long long mode_, long long PAD_, long long dev_) {
348481418a27Smrg  const char *path = (const char *)path_;
348581418a27Smrg  if (path) {
348681418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
348781418a27Smrg  }
348881418a27Smrg}
348981418a27SmrgPOST_SYSCALL(mknodat)
349081418a27Smrg(long long res, long long fd_, void *path_, long long mode_, long long PAD_,
349181418a27Smrg  long long dev_) {
349281418a27Smrg  const char *path = (const char *)path_;
349381418a27Smrg  if (res == 0) {
349481418a27Smrg    if (path) {
349581418a27Smrg      POST_READ(path, __sanitizer::internal_strlen(path) + 1);
349681418a27Smrg    }
349781418a27Smrg  }
349881418a27Smrg}
349981418a27SmrgPRE_SYSCALL(mkdirat)(long long fd_, void *path_, long long mode_) {
350081418a27Smrg  const char *path = (const char *)path_;
350181418a27Smrg  if (path) {
350281418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
350381418a27Smrg  }
350481418a27Smrg}
350581418a27SmrgPOST_SYSCALL(mkdirat)
350681418a27Smrg(long long res, long long fd_, void *path_, long long mode_) {
350781418a27Smrg  const char *path = (const char *)path_;
350881418a27Smrg  if (res == 0) {
350981418a27Smrg    if (path) {
351081418a27Smrg      POST_READ(path, __sanitizer::internal_strlen(path) + 1);
351181418a27Smrg    }
351281418a27Smrg  }
351381418a27Smrg}
351481418a27SmrgPRE_SYSCALL(faccessat)
351581418a27Smrg(long long fd_, void *path_, long long amode_, long long flag_) {
351681418a27Smrg  const char *path = (const char *)path_;
351781418a27Smrg  if (path) {
351881418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
351981418a27Smrg  }
352081418a27Smrg}
352181418a27SmrgPOST_SYSCALL(faccessat)
352281418a27Smrg(long long res, long long fd_, void *path_, long long amode_, long long flag_) {
352381418a27Smrg  const char *path = (const char *)path_;
352481418a27Smrg  if (res == 0) {
352581418a27Smrg    if (path) {
352681418a27Smrg      POST_READ(path, __sanitizer::internal_strlen(path) + 1);
352781418a27Smrg    }
352881418a27Smrg  }
352981418a27Smrg}
353081418a27SmrgPRE_SYSCALL(fchmodat)
353181418a27Smrg(long long fd_, void *path_, long long mode_, long long flag_) {
353281418a27Smrg  const char *path = (const char *)path_;
353381418a27Smrg  if (path) {
353481418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
353581418a27Smrg  }
353681418a27Smrg}
353781418a27SmrgPOST_SYSCALL(fchmodat)
353881418a27Smrg(long long res, long long fd_, void *path_, long long mode_, long long flag_) {
353981418a27Smrg  const char *path = (const char *)path_;
354081418a27Smrg  if (res == 0) {
354181418a27Smrg    if (path) {
354281418a27Smrg      POST_READ(path, __sanitizer::internal_strlen(path) + 1);
354381418a27Smrg    }
354481418a27Smrg  }
354581418a27Smrg}
354681418a27SmrgPRE_SYSCALL(fchownat)
354781418a27Smrg(long long fd_, void *path_, long long owner_, long long group_,
354881418a27Smrg  long long flag_) {
354981418a27Smrg  const char *path = (const char *)path_;
355081418a27Smrg  if (path) {
355181418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
355281418a27Smrg  }
355381418a27Smrg}
355481418a27SmrgPOST_SYSCALL(fchownat)
355581418a27Smrg(long long res, long long fd_, void *path_, long long owner_, long long group_,
355681418a27Smrg  long long flag_) {
355781418a27Smrg  const char *path = (const char *)path_;
355881418a27Smrg  if (res == 0) {
355981418a27Smrg    if (path) {
356081418a27Smrg      POST_READ(path, __sanitizer::internal_strlen(path) + 1);
356181418a27Smrg    }
356281418a27Smrg  }
356381418a27Smrg}
356481418a27SmrgPRE_SYSCALL(fexecve)(long long fd_, void *argp_, void *envp_) { /* TODO */ }
356581418a27SmrgPOST_SYSCALL(fexecve)(long long res, long long fd_, void *argp_, void *envp_) {
356681418a27Smrg  /* TODO */
356781418a27Smrg}
356881418a27SmrgPRE_SYSCALL(fstatat)(long long fd_, void *path_, void *buf_, long long flag_) {
356981418a27Smrg  const char *path = (const char *)path_;
357081418a27Smrg  if (path) {
357181418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
357281418a27Smrg  }
357381418a27Smrg}
357481418a27SmrgPOST_SYSCALL(fstatat)
357581418a27Smrg(long long res, long long fd_, void *path_, void *buf_, long long flag_) {
357681418a27Smrg  const char *path = (const char *)path_;
357781418a27Smrg  if (path) {
357881418a27Smrg    POST_READ(path, __sanitizer::internal_strlen(path) + 1);
357981418a27Smrg  }
358081418a27Smrg}
358181418a27SmrgPRE_SYSCALL(utimensat)
358281418a27Smrg(long long fd_, void *path_, void *tptr_, long long flag_) {
358381418a27Smrg  const char *path = (const char *)path_;
358481418a27Smrg  if (path) {
358581418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
358681418a27Smrg  }
358781418a27Smrg  if (tptr_) {
358881418a27Smrg    PRE_READ(tptr_, struct_timespec_sz);
358981418a27Smrg  }
359081418a27Smrg}
359181418a27SmrgPOST_SYSCALL(utimensat)
359281418a27Smrg(long long res, long long fd_, void *path_, void *tptr_, long long flag_) {
359381418a27Smrg  const char *path = (const char *)path_;
359481418a27Smrg  if (res > 0) {
359581418a27Smrg    if (path) {
359681418a27Smrg      POST_READ(path, __sanitizer::internal_strlen(path) + 1);
359781418a27Smrg    }
359881418a27Smrg    if (tptr_) {
359981418a27Smrg      POST_READ(tptr_, struct_timespec_sz);
360081418a27Smrg    }
360181418a27Smrg  }
360281418a27Smrg}
360381418a27SmrgPRE_SYSCALL(openat)
360481418a27Smrg(long long fd_, void *path_, long long oflags_, long long mode_) {
360581418a27Smrg  const char *path = (const char *)path_;
360681418a27Smrg  if (path) {
360781418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
360881418a27Smrg  }
360981418a27Smrg}
361081418a27SmrgPOST_SYSCALL(openat)
361181418a27Smrg(long long res, long long fd_, void *path_, long long oflags_,
361281418a27Smrg  long long mode_) {
361381418a27Smrg  const char *path = (const char *)path_;
361481418a27Smrg  if (res > 0) {
361581418a27Smrg    if (path) {
361681418a27Smrg      POST_READ(path, __sanitizer::internal_strlen(path) + 1);
361781418a27Smrg    }
361881418a27Smrg  }
361981418a27Smrg}
362081418a27SmrgPRE_SYSCALL(readlinkat)
362181418a27Smrg(long long fd_, void *path_, void *buf_, long long bufsize_) {
362281418a27Smrg  const char *path = (const char *)path_;
362381418a27Smrg  if (path) {
362481418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
362581418a27Smrg  }
362681418a27Smrg}
362781418a27SmrgPOST_SYSCALL(readlinkat)
362881418a27Smrg(long long res, long long fd_, void *path_, void *buf_, long long bufsize_) {
362981418a27Smrg  const char *path = (const char *)path_;
363081418a27Smrg  if (res > 0) {
363181418a27Smrg    if (path) {
363281418a27Smrg      POST_READ(path, __sanitizer::internal_strlen(path) + 1);
363381418a27Smrg    }
363481418a27Smrg  }
363581418a27Smrg}
363681418a27SmrgPRE_SYSCALL(symlinkat)(void *path1_, long long fd_, void *path2_) {
363781418a27Smrg  const char *path1 = (const char *)path1_;
363881418a27Smrg  const char *path2 = (const char *)path2_;
363981418a27Smrg  if (path1) {
364081418a27Smrg    PRE_READ(path1, __sanitizer::internal_strlen(path1) + 1);
364181418a27Smrg  }
364281418a27Smrg  if (path2) {
364381418a27Smrg    PRE_READ(path2, __sanitizer::internal_strlen(path2) + 1);
364481418a27Smrg  }
364581418a27Smrg}
364681418a27SmrgPOST_SYSCALL(symlinkat)
364781418a27Smrg(long long res, void *path1_, long long fd_, void *path2_) {
364881418a27Smrg  const char *path1 = (const char *)path1_;
364981418a27Smrg  const char *path2 = (const char *)path2_;
365081418a27Smrg  if (res == 0) {
365181418a27Smrg    if (path1) {
365281418a27Smrg      POST_READ(path1, __sanitizer::internal_strlen(path1) + 1);
365381418a27Smrg    }
365481418a27Smrg    if (path2) {
365581418a27Smrg      POST_READ(path2, __sanitizer::internal_strlen(path2) + 1);
365681418a27Smrg    }
365781418a27Smrg  }
365881418a27Smrg}
365981418a27SmrgPRE_SYSCALL(unlinkat)(long long fd_, void *path_, long long flag_) {
366081418a27Smrg  const char *path = (const char *)path_;
366181418a27Smrg  if (path) {
366281418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
366381418a27Smrg  }
366481418a27Smrg}
366581418a27SmrgPOST_SYSCALL(unlinkat)
366681418a27Smrg(long long res, long long fd_, void *path_, long long flag_) {
366781418a27Smrg  const char *path = (const char *)path_;
366881418a27Smrg  if (res == 0) {
366981418a27Smrg    if (path) {
367081418a27Smrg      POST_READ(path, __sanitizer::internal_strlen(path) + 1);
367181418a27Smrg    }
367281418a27Smrg  }
367381418a27Smrg}
367481418a27SmrgPRE_SYSCALL(futimens)(long long fd_, void *tptr_) {
367581418a27Smrg  struct __sanitizer_timespec **tptr = (struct __sanitizer_timespec **)tptr_;
367681418a27Smrg  if (tptr) {
367781418a27Smrg    PRE_READ(tptr[0], struct_timespec_sz);
367881418a27Smrg    PRE_READ(tptr[1], struct_timespec_sz);
367981418a27Smrg  }
368081418a27Smrg}
368181418a27SmrgPOST_SYSCALL(futimens)(long long res, long long fd_, void *tptr_) {
368281418a27Smrg  struct __sanitizer_timespec **tptr = (struct __sanitizer_timespec **)tptr_;
368381418a27Smrg  if (res == 0) {
368481418a27Smrg    if (tptr) {
368581418a27Smrg      POST_READ(tptr[0], struct_timespec_sz);
368681418a27Smrg      POST_READ(tptr[1], struct_timespec_sz);
368781418a27Smrg    }
368881418a27Smrg  }
368981418a27Smrg}
369081418a27SmrgPRE_SYSCALL(__quotactl)(void *path_, void *args_) {
369181418a27Smrg  const char *path = (const char *)path_;
369281418a27Smrg  if (path) {
369381418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
369481418a27Smrg  }
369581418a27Smrg}
369681418a27SmrgPOST_SYSCALL(__quotactl)(long long res, void *path_, void *args_) {
369781418a27Smrg  const char *path = (const char *)path_;
369881418a27Smrg  if (res == 0) {
369981418a27Smrg    if (path) {
370081418a27Smrg      POST_READ(path, __sanitizer::internal_strlen(path) + 1);
370181418a27Smrg    }
370281418a27Smrg  }
370381418a27Smrg}
370481418a27SmrgPRE_SYSCALL(posix_spawn)
370581418a27Smrg(void *pid_, void *path_, void *file_actions_, void *attrp_, void *argv_,
370681418a27Smrg  void *envp_) {
370781418a27Smrg  const char *path = (const char *)path_;
370881418a27Smrg  if (path) {
370981418a27Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
371081418a27Smrg  }
371181418a27Smrg}
371281418a27SmrgPOST_SYSCALL(posix_spawn)
371381418a27Smrg(long long res, void *pid_, void *path_, void *file_actions_, void *attrp_,
371481418a27Smrg  void *argv_, void *envp_) {
371581418a27Smrg  const char *path = (const char *)path_;
371681418a27Smrg  if (pid_) {
371781418a27Smrg    if (path) {
371881418a27Smrg      POST_READ(path, __sanitizer::internal_strlen(path) + 1);
371981418a27Smrg    }
372081418a27Smrg  }
372181418a27Smrg}
372281418a27SmrgPRE_SYSCALL(recvmmsg)
372381418a27Smrg(long long s_, void *mmsg_, long long vlen_, long long flags_, void *timeout_) {
372481418a27Smrg  if (timeout_) {
372581418a27Smrg    PRE_READ(timeout_, struct_timespec_sz);
372681418a27Smrg  }
372781418a27Smrg}
372881418a27SmrgPOST_SYSCALL(recvmmsg)
372981418a27Smrg(long long res, long long s_, void *mmsg_, long long vlen_, long long flags_,
373081418a27Smrg  void *timeout_) {
373181418a27Smrg  if (res >= 0) {
373281418a27Smrg    if (timeout_) {
373381418a27Smrg      POST_READ(timeout_, struct_timespec_sz);
373481418a27Smrg    }
373581418a27Smrg  }
373681418a27Smrg}
373781418a27SmrgPRE_SYSCALL(sendmmsg)
373881418a27Smrg(long long s_, void *mmsg_, long long vlen_, long long flags_) {
373981418a27Smrg  struct __sanitizer_mmsghdr *mmsg = (struct __sanitizer_mmsghdr *)mmsg_;
374081418a27Smrg  if (mmsg) {
37417bb5462dSkamil    PRE_READ(mmsg, sizeof(struct __sanitizer_mmsghdr) *
37427bb5462dSkamil                       (vlen_ > 1024 ? 1024 : vlen_));
374381418a27Smrg  }
374481418a27Smrg}
374581418a27SmrgPOST_SYSCALL(sendmmsg)
374681418a27Smrg(long long res, long long s_, void *mmsg_, long long vlen_, long long flags_) {
374781418a27Smrg  struct __sanitizer_mmsghdr *mmsg = (struct __sanitizer_mmsghdr *)mmsg_;
374881418a27Smrg  if (res >= 0) {
374981418a27Smrg    if (mmsg) {
37507bb5462dSkamil      POST_READ(mmsg, sizeof(struct __sanitizer_mmsghdr) *
37517bb5462dSkamil                          (vlen_ > 1024 ? 1024 : vlen_));
375281418a27Smrg    }
375381418a27Smrg  }
375481418a27Smrg}
375581418a27SmrgPRE_SYSCALL(clock_nanosleep)
375681418a27Smrg(long long clock_id_, long long flags_, void *rqtp_, void *rmtp_) {
375781418a27Smrg  if (rqtp_) {
375881418a27Smrg    PRE_READ(rqtp_, struct_timespec_sz);
375981418a27Smrg  }
376081418a27Smrg}
376181418a27SmrgPOST_SYSCALL(clock_nanosleep)
376281418a27Smrg(long long res, long long clock_id_, long long flags_, void *rqtp_,
376381418a27Smrg  void *rmtp_) {
376481418a27Smrg  if (rqtp_) {
376581418a27Smrg    POST_READ(rqtp_, struct_timespec_sz);
376681418a27Smrg  }
376781418a27Smrg}
376881418a27SmrgPRE_SYSCALL(___lwp_park60)
376981418a27Smrg(long long clock_id_, long long flags_, void *ts_, long long unpark_,
377081418a27Smrg  void *hint_, void *unparkhint_) {
377181418a27Smrg  if (ts_) {
377281418a27Smrg    PRE_READ(ts_, struct_timespec_sz);
377381418a27Smrg  }
377481418a27Smrg}
377581418a27SmrgPOST_SYSCALL(___lwp_park60)
377681418a27Smrg(long long res, long long clock_id_, long long flags_, void *ts_,
377781418a27Smrg  long long unpark_, void *hint_, void *unparkhint_) {
377881418a27Smrg  if (res == 0) {
377981418a27Smrg    if (ts_) {
378081418a27Smrg      POST_READ(ts_, struct_timespec_sz);
378181418a27Smrg    }
378281418a27Smrg  }
378381418a27Smrg}
378481418a27SmrgPRE_SYSCALL(posix_fallocate)
378581418a27Smrg(long long fd_, long long PAD_, long long pos_, long long len_) {
378681418a27Smrg  /* Nothing to do */
378781418a27Smrg}
378881418a27SmrgPOST_SYSCALL(posix_fallocate)
378981418a27Smrg(long long res, long long fd_, long long PAD_, long long pos_, long long len_) {
379081418a27Smrg  /* Nothing to do */
379181418a27Smrg}
379281418a27SmrgPRE_SYSCALL(fdiscard)
379381418a27Smrg(long long fd_, long long PAD_, long long pos_, long long len_) {
379481418a27Smrg  /* Nothing to do */
379581418a27Smrg}
379681418a27SmrgPOST_SYSCALL(fdiscard)
379781418a27Smrg(long long res, long long fd_, long long PAD_, long long pos_, long long len_) {
379881418a27Smrg  /* Nothing to do */
379981418a27Smrg}
380081418a27SmrgPRE_SYSCALL(wait6)
380181418a27Smrg(long long idtype_, long long id_, void *status_, long long options_,
380281418a27Smrg  void *wru_, void *info_) {
380381418a27Smrg  /* Nothing to do */
380481418a27Smrg}
380581418a27SmrgPOST_SYSCALL(wait6)
380681418a27Smrg(long long res, long long idtype_, long long id_, void *status_,
380781418a27Smrg  long long options_, void *wru_, void *info_) {
380881418a27Smrg  /* Nothing to do */
380981418a27Smrg}
381081418a27SmrgPRE_SYSCALL(clock_getcpuclockid2)
381181418a27Smrg(long long idtype_, long long id_, void *clock_id_) {
381281418a27Smrg  /* Nothing to do */
381381418a27Smrg}
381481418a27SmrgPOST_SYSCALL(clock_getcpuclockid2)
381581418a27Smrg(long long res, long long idtype_, long long id_, void *clock_id_) {
381681418a27Smrg  /* Nothing to do */
381781418a27Smrg}
3818*490215a3SmrgPRE_SYSCALL(__getvfsstat90)(void *buf_, long long bufsize_, long long flags_) {
3819*490215a3Smrg  /* Nothing to do */
3820*490215a3Smrg}
3821*490215a3SmrgPOST_SYSCALL(__getvfsstat90)
3822*490215a3Smrg(long long res, void *buf_, long long bufsize_, long long flags_) {
3823*490215a3Smrg  /* Nothing to do */
3824*490215a3Smrg}
3825*490215a3SmrgPRE_SYSCALL(__statvfs190)(void *path_, void *buf_, long long flags_) {
3826*490215a3Smrg  const char *path = (const char *)path_;
3827*490215a3Smrg  if (path) {
3828*490215a3Smrg    PRE_READ(path, __sanitizer::internal_strlen(path) + 1);
3829*490215a3Smrg  }
3830*490215a3Smrg}
3831*490215a3SmrgPOST_SYSCALL(__statvfs190)
3832*490215a3Smrg(long long res, void *path_, void *buf_, long long flags_) {
3833*490215a3Smrg  const char *path = (const char *)path_;
3834*490215a3Smrg  if (path) {
3835*490215a3Smrg    POST_READ(path, __sanitizer::internal_strlen(path) + 1);
3836*490215a3Smrg  }
3837*490215a3Smrg}
3838*490215a3SmrgPRE_SYSCALL(__fstatvfs190)(long long fd_, void *buf_, long long flags_) {
3839*490215a3Smrg  /* Nothing to do */
3840*490215a3Smrg}
3841*490215a3SmrgPOST_SYSCALL(__fstatvfs190)
3842*490215a3Smrg(long long res, long long fd_, void *buf_, long long flags_) {
3843*490215a3Smrg  /* Nothing to do */
3844*490215a3Smrg}
3845*490215a3SmrgPRE_SYSCALL(__fhstatvfs190)
3846*490215a3Smrg(void *fhp_, long long fh_size_, void *buf_, long long flags_) {
3847*490215a3Smrg  if (fhp_) {
3848*490215a3Smrg    PRE_READ(fhp_, fh_size_);
3849*490215a3Smrg  }
3850*490215a3Smrg}
3851*490215a3SmrgPOST_SYSCALL(__fhstatvfs190)
3852*490215a3Smrg(long long res, void *fhp_, long long fh_size_, void *buf_, long long flags_) {}
38537bb5462dSkamilPRE_SYSCALL(__acl_get_link)(void *path_, long long type_, void *aclp_) {
38547bb5462dSkamil  /* TODO */
38557bb5462dSkamil}
38567bb5462dSkamilPOST_SYSCALL(__acl_get_link)
38577bb5462dSkamil(long long res, void *path_, long long type_, void *aclp_) {
38587bb5462dSkamil  /* TODO */
38597bb5462dSkamil}
38607bb5462dSkamilPRE_SYSCALL(__acl_set_link)(void *path_, long long type_, void *aclp_) {
38617bb5462dSkamil  /* TODO */
38627bb5462dSkamil}
38637bb5462dSkamilPOST_SYSCALL(__acl_set_link)
38647bb5462dSkamil(long long res, void *path_, long long type_, void *aclp_) {
38657bb5462dSkamil  /* TODO */
38667bb5462dSkamil}
38677bb5462dSkamilPRE_SYSCALL(__acl_delete_link)(void *path_, long long type_) { /* TODO */ }
38687bb5462dSkamilPOST_SYSCALL(__acl_delete_link)(long long res, void *path_, long long type_) {
38697bb5462dSkamil  /* TODO */
38707bb5462dSkamil}
38717bb5462dSkamilPRE_SYSCALL(__acl_aclcheck_link)(void *path_, long long type_, void *aclp_) {
38727bb5462dSkamil  /* TODO */
38737bb5462dSkamil}
38747bb5462dSkamilPOST_SYSCALL(__acl_aclcheck_link)
38757bb5462dSkamil(long long res, void *path_, long long type_, void *aclp_) {
38767bb5462dSkamil  /* TODO */
38777bb5462dSkamil}
38787bb5462dSkamilPRE_SYSCALL(__acl_get_file)(void *path_, long long type_, void *aclp_) {
38797bb5462dSkamil  /* TODO */
38807bb5462dSkamil}
38817bb5462dSkamilPOST_SYSCALL(__acl_get_file)
38827bb5462dSkamil(long long res, void *path_, long long type_, void *aclp_) {
38837bb5462dSkamil  /* TODO */
38847bb5462dSkamil}
38857bb5462dSkamilPRE_SYSCALL(__acl_set_file)(void *path_, long long type_, void *aclp_) {
38867bb5462dSkamil  /* TODO */
38877bb5462dSkamil}
38887bb5462dSkamilPOST_SYSCALL(__acl_set_file)
38897bb5462dSkamil(long long res, void *path_, long long type_, void *aclp_) {
38907bb5462dSkamil  /* TODO */
38917bb5462dSkamil}
38927bb5462dSkamilPRE_SYSCALL(__acl_get_fd)(long long filedes_, long long type_, void *aclp_) {
38937bb5462dSkamil  /* TODO */
38947bb5462dSkamil}
38957bb5462dSkamilPOST_SYSCALL(__acl_get_fd)
38967bb5462dSkamil(long long res, long long filedes_, long long type_, void *aclp_) {
38977bb5462dSkamil  /* TODO */
38987bb5462dSkamil}
38997bb5462dSkamilPRE_SYSCALL(__acl_set_fd)(long long filedes_, long long type_, void *aclp_) {
39007bb5462dSkamil  /* TODO */
39017bb5462dSkamil}
39027bb5462dSkamilPOST_SYSCALL(__acl_set_fd)
39037bb5462dSkamil(long long res, long long filedes_, long long type_, void *aclp_) {
39047bb5462dSkamil  /* TODO */
39057bb5462dSkamil}
39067bb5462dSkamilPRE_SYSCALL(__acl_delete_file)(void *path_, long long type_) { /* TODO */ }
39077bb5462dSkamilPOST_SYSCALL(__acl_delete_file)(long long res, void *path_, long long type_) {
39087bb5462dSkamil  /* TODO */
39097bb5462dSkamil}
39107bb5462dSkamilPRE_SYSCALL(__acl_delete_fd)(long long filedes_, long long type_) { /* TODO */ }
39117bb5462dSkamilPOST_SYSCALL(__acl_delete_fd)
39127bb5462dSkamil(long long res, long long filedes_, long long type_) {
39137bb5462dSkamil  /* TODO */
39147bb5462dSkamil}
39157bb5462dSkamilPRE_SYSCALL(__acl_aclcheck_file)(void *path_, long long type_, void *aclp_) {
39167bb5462dSkamil  /* TODO */
39177bb5462dSkamil}
39187bb5462dSkamilPOST_SYSCALL(__acl_aclcheck_file)
39197bb5462dSkamil(long long res, void *path_, long long type_, void *aclp_) {
39207bb5462dSkamil  /* TODO */
39217bb5462dSkamil}
39227bb5462dSkamilPRE_SYSCALL(__acl_aclcheck_fd)
39237bb5462dSkamil(long long filedes_, long long type_, void *aclp_) {
39247bb5462dSkamil  /* TODO */
39257bb5462dSkamil}
39267bb5462dSkamilPOST_SYSCALL(__acl_aclcheck_fd)
39277bb5462dSkamil(long long res, long long filedes_, long long type_, void *aclp_) {
39287bb5462dSkamil  /* TODO */
39297bb5462dSkamil}
39307bb5462dSkamilPRE_SYSCALL(lpathconf)(void *path_, long long name_) { /* TODO */ }
39317bb5462dSkamilPOST_SYSCALL(lpathconf)(long long res, void *path_, long long name_) {
39327bb5462dSkamil  /* TODO */
39337bb5462dSkamil}
393481418a27Smrg#undef SYS_MAXSYSARGS
393581418a27Smrg} // extern "C"
393681418a27Smrg
393781418a27Smrg#undef PRE_SYSCALL
393881418a27Smrg#undef PRE_READ
393981418a27Smrg#undef PRE_WRITE
394081418a27Smrg#undef POST_SYSCALL
394181418a27Smrg#undef POST_READ
394281418a27Smrg#undef POST_WRITE
394381418a27Smrg
394481418a27Smrg#endif // SANITIZER_NETBSD
3945