xref: /aosp_15_r20/external/strace/sysent.h (revision cf84ac9a129d8ea9952db616b4e9b904c4bdde56)
1*cf84ac9aSAndroid Build Coastguard Worker #ifndef STRACE_SYSENT_H
2*cf84ac9aSAndroid Build Coastguard Worker #define STRACE_SYSENT_H
3*cf84ac9aSAndroid Build Coastguard Worker 
4*cf84ac9aSAndroid Build Coastguard Worker struct tcb;
5*cf84ac9aSAndroid Build Coastguard Worker 
6*cf84ac9aSAndroid Build Coastguard Worker typedef struct sysent {
7*cf84ac9aSAndroid Build Coastguard Worker 	unsigned nargs;
8*cf84ac9aSAndroid Build Coastguard Worker 	int	sys_flags;
9*cf84ac9aSAndroid Build Coastguard Worker 	int	sen;
10*cf84ac9aSAndroid Build Coastguard Worker 	int	(*sys_func)(struct tcb *);
11*cf84ac9aSAndroid Build Coastguard Worker 	const char *sys_name;
12*cf84ac9aSAndroid Build Coastguard Worker } struct_sysent;
13*cf84ac9aSAndroid Build Coastguard Worker 
14*cf84ac9aSAndroid Build Coastguard Worker #define TRACE_FILE			00000001	/* Trace file-related syscalls. */
15*cf84ac9aSAndroid Build Coastguard Worker #define TRACE_IPC			00000002	/* Trace IPC-related syscalls. */
16*cf84ac9aSAndroid Build Coastguard Worker #define TRACE_NETWORK			00000004	/* Trace network-related syscalls. */
17*cf84ac9aSAndroid Build Coastguard Worker #define TRACE_PROCESS			00000010	/* Trace process-related syscalls. */
18*cf84ac9aSAndroid Build Coastguard Worker #define TRACE_SIGNAL			00000020	/* Trace signal-related syscalls. */
19*cf84ac9aSAndroid Build Coastguard Worker #define TRACE_DESC			00000040	/* Trace file descriptor-related syscalls. */
20*cf84ac9aSAndroid Build Coastguard Worker #define TRACE_MEMORY			00000100	/* Trace memory mapping-related syscalls. */
21*cf84ac9aSAndroid Build Coastguard Worker #define SYSCALL_NEVER_FAILS		00000200	/* Syscall is always successful. */
22*cf84ac9aSAndroid Build Coastguard Worker #define MEMORY_MAPPING_CHANGE		00000400	/* Trigger proc/maps cache updating */
23*cf84ac9aSAndroid Build Coastguard Worker #define STACKTRACE_CAPTURE_ON_ENTER	00001000	/* Capture stacktrace on "entering" stage */
24*cf84ac9aSAndroid Build Coastguard Worker #define TRACE_INDIRECT_SUBCALL		00002000	/* Syscall is an indirect socket/ipc subcall. */
25*cf84ac9aSAndroid Build Coastguard Worker #define COMPAT_SYSCALL_TYPES		00004000	/* A compat syscall that uses compat types. */
26*cf84ac9aSAndroid Build Coastguard Worker #define TRACE_STAT			00010000	/* Trace {,*_}{,old}{,x}stat{,64} syscalls. */
27*cf84ac9aSAndroid Build Coastguard Worker #define TRACE_LSTAT			00020000	/* Trace *lstat* syscalls. */
28*cf84ac9aSAndroid Build Coastguard Worker #define TRACE_STATFS			00040000	/* Trace statfs, statfs64, and statvfs syscalls. */
29*cf84ac9aSAndroid Build Coastguard Worker #define TRACE_FSTATFS			00100000	/* Trace fstatfs, fstatfs64 and fstatvfs syscalls. */
30*cf84ac9aSAndroid Build Coastguard Worker #define TRACE_STATFS_LIKE		00200000	/* Trace statfs-like, fstatfs-like and ustat syscalls. */
31*cf84ac9aSAndroid Build Coastguard Worker #define TRACE_FSTAT			00400000	/* Trace *fstat{,at}{,64} syscalls. */
32*cf84ac9aSAndroid Build Coastguard Worker #define TRACE_STAT_LIKE			01000000	/* Trace *{,l,f}stat{,x,at}{,64} syscalls. */
33*cf84ac9aSAndroid Build Coastguard Worker #define TRACE_PURE			02000000	/* Trace getter syscalls with no arguments. */
34*cf84ac9aSAndroid Build Coastguard Worker 
35*cf84ac9aSAndroid Build Coastguard Worker #endif /* !STRACE_SYSENT_H */
36