(root)/
strace-6.5/
src/
sysent.h
       1  /*
       2   * Copyright (c) 2016-2022 The strace developers.
       3   * All rights reserved.
       4   *
       5   * SPDX-License-Identifier: LGPL-2.1-or-later
       6   */
       7  
       8  #ifndef STRACE_SYSENT_H
       9  # define STRACE_SYSENT_H
      10  
      11  struct tcb;
      12  
      13  typedef struct sysent {
      14  	unsigned nargs;
      15  	int	sys_flags;
      16  	int	sen;
      17  	int	(*sys_func)(struct tcb *);
      18  	const char *sys_name;
      19  } struct_sysent;
      20  
      21  # define TRACE_FILE			000000001	/* Trace file-related syscalls. */
      22  # define TRACE_IPC			000000002	/* Trace IPC-related syscalls. */
      23  # define TRACE_NETWORK			000000004	/* Trace network-related syscalls. */
      24  # define TRACE_PROCESS			000000010	/* Trace process-related syscalls. */
      25  # define TRACE_SIGNAL			000000020	/* Trace signal-related syscalls. */
      26  # define TRACE_DESC			000000040	/* Trace file descriptor-related syscalls. */
      27  # define TRACE_MEMORY			000000100	/* Trace memory mapping-related syscalls. */
      28  # define SYSCALL_NEVER_FAILS		000000200	/* Syscall is always successful. */
      29  # define MEMORY_MAPPING_CHANGE		000000400	/* Trigger proc/maps cache updating */
      30  # define STACKTRACE_CAPTURE_ON_ENTER	000001000	/* Capture stacktrace on "entering" stage */
      31  # define TRACE_INDIRECT_SUBCALL		000002000	/* Syscall is an indirect socket/ipc subcall. */
      32  # define COMPAT_SYSCALL_TYPES		000004000	/* A compat syscall that uses compat types. */
      33  # define TRACE_STAT			000010000	/* Trace {,*_}{,old}{,x}stat{,64} syscalls. */
      34  # define TRACE_LSTAT			000020000	/* Trace *lstat* syscalls. */
      35  # define TRACE_STATFS			000040000	/* Trace statfs, statfs64, and statvfs syscalls. */
      36  # define TRACE_FSTATFS			000100000	/* Trace fstatfs, fstatfs64 and fstatvfs syscalls. */
      37  # define TRACE_STATFS_LIKE		000200000	/* Trace statfs-like, fstatfs-like and ustat syscalls. */
      38  # define TRACE_FSTAT			000400000	/* Trace *fstat{,at}{,64} syscalls. */
      39  # define TRACE_STAT_LIKE		001000000	/* Trace *{,l,f}stat{,x,at}{,64} syscalls. */
      40  # define TRACE_PURE			002000000	/* Trace getter syscalls with no arguments. */
      41  # define TRACE_SECCOMP_DEFAULT		004000000	/* Syscall is traced by seccomp filter by default. */
      42  # define TRACE_CREDS			010000000	/* Trace process credentials-related syscalls. */
      43  # define TRACE_CLOCK			020000000	/* Trace syscalls reading or modifying system clocks. */
      44  # define COMM_CHANGE			040000000	/* Trigger /proc/$pid/comm cache update. */
      45  
      46  #endif /* !STRACE_SYSENT_H */