xref: /aosp_15_r20/bionic/libc/kernel/uapi/linux/cn_proc.h (revision 8d67ca893c1523eb926b9080dbe4e2ffd2a27ba1)
1*8d67ca89SAndroid Build Coastguard Worker /*
2*8d67ca89SAndroid Build Coastguard Worker  * This file is auto-generated. Modifications will be lost.
3*8d67ca89SAndroid Build Coastguard Worker  *
4*8d67ca89SAndroid Build Coastguard Worker  * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
5*8d67ca89SAndroid Build Coastguard Worker  * for more information.
6*8d67ca89SAndroid Build Coastguard Worker  */
7*8d67ca89SAndroid Build Coastguard Worker #ifndef _UAPICN_PROC_H
8*8d67ca89SAndroid Build Coastguard Worker #define _UAPICN_PROC_H
9*8d67ca89SAndroid Build Coastguard Worker #include <linux/types.h>
10*8d67ca89SAndroid Build Coastguard Worker enum proc_cn_mcast_op {
11*8d67ca89SAndroid Build Coastguard Worker   PROC_CN_MCAST_LISTEN = 1,
12*8d67ca89SAndroid Build Coastguard Worker   PROC_CN_MCAST_IGNORE = 2
13*8d67ca89SAndroid Build Coastguard Worker };
14*8d67ca89SAndroid Build Coastguard Worker #define PROC_EVENT_ALL (PROC_EVENT_FORK | PROC_EVENT_EXEC | PROC_EVENT_UID | PROC_EVENT_GID | PROC_EVENT_SID | PROC_EVENT_PTRACE | PROC_EVENT_COMM | PROC_EVENT_NONZERO_EXIT | PROC_EVENT_COREDUMP | PROC_EVENT_EXIT)
15*8d67ca89SAndroid Build Coastguard Worker enum proc_cn_event {
16*8d67ca89SAndroid Build Coastguard Worker   PROC_EVENT_NONE = 0x00000000,
17*8d67ca89SAndroid Build Coastguard Worker   PROC_EVENT_FORK = 0x00000001,
18*8d67ca89SAndroid Build Coastguard Worker   PROC_EVENT_EXEC = 0x00000002,
19*8d67ca89SAndroid Build Coastguard Worker   PROC_EVENT_UID = 0x00000004,
20*8d67ca89SAndroid Build Coastguard Worker   PROC_EVENT_GID = 0x00000040,
21*8d67ca89SAndroid Build Coastguard Worker   PROC_EVENT_SID = 0x00000080,
22*8d67ca89SAndroid Build Coastguard Worker   PROC_EVENT_PTRACE = 0x00000100,
23*8d67ca89SAndroid Build Coastguard Worker   PROC_EVENT_COMM = 0x00000200,
24*8d67ca89SAndroid Build Coastguard Worker   PROC_EVENT_NONZERO_EXIT = 0x20000000,
25*8d67ca89SAndroid Build Coastguard Worker   PROC_EVENT_COREDUMP = 0x40000000,
26*8d67ca89SAndroid Build Coastguard Worker   PROC_EVENT_EXIT = 0x80000000
27*8d67ca89SAndroid Build Coastguard Worker };
28*8d67ca89SAndroid Build Coastguard Worker struct proc_input {
29*8d67ca89SAndroid Build Coastguard Worker   enum proc_cn_mcast_op mcast_op;
30*8d67ca89SAndroid Build Coastguard Worker   enum proc_cn_event event_type;
31*8d67ca89SAndroid Build Coastguard Worker };
32*8d67ca89SAndroid Build Coastguard Worker struct proc_event {
33*8d67ca89SAndroid Build Coastguard Worker   enum proc_cn_event what;
34*8d67ca89SAndroid Build Coastguard Worker   __u32 cpu;
35*8d67ca89SAndroid Build Coastguard Worker   __u64 __attribute__((aligned(8))) timestamp_ns;
36*8d67ca89SAndroid Build Coastguard Worker   union {
37*8d67ca89SAndroid Build Coastguard Worker     struct {
38*8d67ca89SAndroid Build Coastguard Worker       __u32 err;
39*8d67ca89SAndroid Build Coastguard Worker     } ack;
40*8d67ca89SAndroid Build Coastguard Worker     struct fork_proc_event {
41*8d67ca89SAndroid Build Coastguard Worker       __kernel_pid_t parent_pid;
42*8d67ca89SAndroid Build Coastguard Worker       __kernel_pid_t parent_tgid;
43*8d67ca89SAndroid Build Coastguard Worker       __kernel_pid_t child_pid;
44*8d67ca89SAndroid Build Coastguard Worker       __kernel_pid_t child_tgid;
45*8d67ca89SAndroid Build Coastguard Worker     } fork;
46*8d67ca89SAndroid Build Coastguard Worker     struct exec_proc_event {
47*8d67ca89SAndroid Build Coastguard Worker       __kernel_pid_t process_pid;
48*8d67ca89SAndroid Build Coastguard Worker       __kernel_pid_t process_tgid;
49*8d67ca89SAndroid Build Coastguard Worker     } exec;
50*8d67ca89SAndroid Build Coastguard Worker     struct id_proc_event {
51*8d67ca89SAndroid Build Coastguard Worker       __kernel_pid_t process_pid;
52*8d67ca89SAndroid Build Coastguard Worker       __kernel_pid_t process_tgid;
53*8d67ca89SAndroid Build Coastguard Worker       union {
54*8d67ca89SAndroid Build Coastguard Worker         __u32 ruid;
55*8d67ca89SAndroid Build Coastguard Worker         __u32 rgid;
56*8d67ca89SAndroid Build Coastguard Worker       } r;
57*8d67ca89SAndroid Build Coastguard Worker       union {
58*8d67ca89SAndroid Build Coastguard Worker         __u32 euid;
59*8d67ca89SAndroid Build Coastguard Worker         __u32 egid;
60*8d67ca89SAndroid Build Coastguard Worker       } e;
61*8d67ca89SAndroid Build Coastguard Worker     } id;
62*8d67ca89SAndroid Build Coastguard Worker     struct sid_proc_event {
63*8d67ca89SAndroid Build Coastguard Worker       __kernel_pid_t process_pid;
64*8d67ca89SAndroid Build Coastguard Worker       __kernel_pid_t process_tgid;
65*8d67ca89SAndroid Build Coastguard Worker     } sid;
66*8d67ca89SAndroid Build Coastguard Worker     struct ptrace_proc_event {
67*8d67ca89SAndroid Build Coastguard Worker       __kernel_pid_t process_pid;
68*8d67ca89SAndroid Build Coastguard Worker       __kernel_pid_t process_tgid;
69*8d67ca89SAndroid Build Coastguard Worker       __kernel_pid_t tracer_pid;
70*8d67ca89SAndroid Build Coastguard Worker       __kernel_pid_t tracer_tgid;
71*8d67ca89SAndroid Build Coastguard Worker     } ptrace;
72*8d67ca89SAndroid Build Coastguard Worker     struct comm_proc_event {
73*8d67ca89SAndroid Build Coastguard Worker       __kernel_pid_t process_pid;
74*8d67ca89SAndroid Build Coastguard Worker       __kernel_pid_t process_tgid;
75*8d67ca89SAndroid Build Coastguard Worker       char comm[16];
76*8d67ca89SAndroid Build Coastguard Worker     } comm;
77*8d67ca89SAndroid Build Coastguard Worker     struct coredump_proc_event {
78*8d67ca89SAndroid Build Coastguard Worker       __kernel_pid_t process_pid;
79*8d67ca89SAndroid Build Coastguard Worker       __kernel_pid_t process_tgid;
80*8d67ca89SAndroid Build Coastguard Worker       __kernel_pid_t parent_pid;
81*8d67ca89SAndroid Build Coastguard Worker       __kernel_pid_t parent_tgid;
82*8d67ca89SAndroid Build Coastguard Worker     } coredump;
83*8d67ca89SAndroid Build Coastguard Worker     struct exit_proc_event {
84*8d67ca89SAndroid Build Coastguard Worker       __kernel_pid_t process_pid;
85*8d67ca89SAndroid Build Coastguard Worker       __kernel_pid_t process_tgid;
86*8d67ca89SAndroid Build Coastguard Worker       __u32 exit_code, exit_signal;
87*8d67ca89SAndroid Build Coastguard Worker       __kernel_pid_t parent_pid;
88*8d67ca89SAndroid Build Coastguard Worker       __kernel_pid_t parent_tgid;
89*8d67ca89SAndroid Build Coastguard Worker     } exit;
90*8d67ca89SAndroid Build Coastguard Worker   } event_data;
91*8d67ca89SAndroid Build Coastguard Worker };
92*8d67ca89SAndroid Build Coastguard Worker #endif
93