blob: 276d437d16c15ded340683ec18346b676a486902 [file] [log] [blame]
Ben Cheng655a7c02013-10-16 16:09:24 -07001/****************************************************************************
2 ****************************************************************************
3 ***
4 *** This header was automatically generated from a Linux kernel header
5 *** of the same name, to make information necessary for userspace to
6 *** call into the kernel available to libc. It contains only constants,
7 *** structures, and macros generated from the original header, and thus,
8 *** contains no copyrightable information.
9 ***
10 *** To edit the content of this header, modify the corresponding
11 *** source file (e.g. under external/kernel-headers/original/) then
12 *** run bionic/libc/kernel/tools/update_all.py
13 ***
14 *** Any manual change here will be lost the next time this script will
15 *** be run. You've been warned!
16 ***
17 ****************************************************************************
18 ****************************************************************************/
19#ifndef _UAPI_LINUX_AUDIT_H_
20#define _UAPI_LINUX_AUDIT_H_
21#include <linux/types.h>
22#include <linux/elf-em.h>
23/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
24#define AUDIT_GET 1000
25#define AUDIT_SET 1001
26#define AUDIT_LIST 1002
27#define AUDIT_ADD 1003
28/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
29#define AUDIT_DEL 1004
30#define AUDIT_USER 1005
31#define AUDIT_LOGIN 1006
32#define AUDIT_WATCH_INS 1007
33/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
34#define AUDIT_WATCH_REM 1008
35#define AUDIT_WATCH_LIST 1009
36#define AUDIT_SIGNAL_INFO 1010
37#define AUDIT_ADD_RULE 1011
38/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
39#define AUDIT_DEL_RULE 1012
40#define AUDIT_LIST_RULES 1013
41#define AUDIT_TRIM 1014
42#define AUDIT_MAKE_EQUIV 1015
43/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
44#define AUDIT_TTY_GET 1016
45#define AUDIT_TTY_SET 1017
Christopher Ferris38062f92014-07-09 15:33:25 -070046#define AUDIT_SET_FEATURE 1018
47#define AUDIT_GET_FEATURE 1019
48/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -070049#define AUDIT_FIRST_USER_MSG 1100
50#define AUDIT_USER_AVC 1107
Ben Cheng655a7c02013-10-16 16:09:24 -070051#define AUDIT_USER_TTY 1124
52#define AUDIT_LAST_USER_MSG 1199
Christopher Ferrisba8d4f42014-09-03 19:56:49 -070053/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -070054#define AUDIT_FIRST_USER_MSG2 2100
55#define AUDIT_LAST_USER_MSG2 2999
Ben Cheng655a7c02013-10-16 16:09:24 -070056#define AUDIT_DAEMON_START 1200
57#define AUDIT_DAEMON_END 1201
Christopher Ferrisba8d4f42014-09-03 19:56:49 -070058/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -070059#define AUDIT_DAEMON_ABORT 1202
60#define AUDIT_DAEMON_CONFIG 1203
Ben Cheng655a7c02013-10-16 16:09:24 -070061#define AUDIT_SYSCALL 1300
62#define AUDIT_PATH 1302
Christopher Ferrisba8d4f42014-09-03 19:56:49 -070063/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -070064#define AUDIT_IPC 1303
65#define AUDIT_SOCKETCALL 1304
Ben Cheng655a7c02013-10-16 16:09:24 -070066#define AUDIT_CONFIG_CHANGE 1305
67#define AUDIT_SOCKADDR 1306
Christopher Ferrisba8d4f42014-09-03 19:56:49 -070068/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -070069#define AUDIT_CWD 1307
70#define AUDIT_EXECVE 1309
Ben Cheng655a7c02013-10-16 16:09:24 -070071#define AUDIT_IPC_SET_PERM 1311
72#define AUDIT_MQ_OPEN 1312
Christopher Ferrisba8d4f42014-09-03 19:56:49 -070073/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -070074#define AUDIT_MQ_SENDRECV 1313
75#define AUDIT_MQ_NOTIFY 1314
Ben Cheng655a7c02013-10-16 16:09:24 -070076#define AUDIT_MQ_GETSETATTR 1315
77#define AUDIT_KERNEL_OTHER 1316
Christopher Ferrisba8d4f42014-09-03 19:56:49 -070078/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -070079#define AUDIT_FD_PAIR 1317
80#define AUDIT_OBJ_PID 1318
Ben Cheng655a7c02013-10-16 16:09:24 -070081#define AUDIT_TTY 1319
82#define AUDIT_EOE 1320
Christopher Ferrisba8d4f42014-09-03 19:56:49 -070083/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -070084#define AUDIT_BPRM_FCAPS 1321
85#define AUDIT_CAPSET 1322
Ben Cheng655a7c02013-10-16 16:09:24 -070086#define AUDIT_MMAP 1323
87#define AUDIT_NETFILTER_PKT 1324
Christopher Ferrisba8d4f42014-09-03 19:56:49 -070088/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -070089#define AUDIT_NETFILTER_CFG 1325
90#define AUDIT_SECCOMP 1326
Christopher Ferrisba8d4f42014-09-03 19:56:49 -070091#define AUDIT_PROCTITLE 1327
92#define AUDIT_FEATURE_CHANGE 1328
Christopher Ferris38062f92014-07-09 15:33:25 -070093/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -070094#define AUDIT_AVC 1400
Ben Cheng655a7c02013-10-16 16:09:24 -070095#define AUDIT_SELINUX_ERR 1401
96#define AUDIT_AVC_PATH 1402
97#define AUDIT_MAC_POLICY_LOAD 1403
Christopher Ferris38062f92014-07-09 15:33:25 -070098/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -070099#define AUDIT_MAC_STATUS 1404
Ben Cheng655a7c02013-10-16 16:09:24 -0700100#define AUDIT_MAC_CONFIG_CHANGE 1405
101#define AUDIT_MAC_UNLBL_ALLOW 1406
102#define AUDIT_MAC_CIPSOV4_ADD 1407
Christopher Ferris38062f92014-07-09 15:33:25 -0700103/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700104#define AUDIT_MAC_CIPSOV4_DEL 1408
Ben Cheng655a7c02013-10-16 16:09:24 -0700105#define AUDIT_MAC_MAP_ADD 1409
106#define AUDIT_MAC_MAP_DEL 1410
107#define AUDIT_MAC_IPSEC_ADDSA 1411
Christopher Ferris38062f92014-07-09 15:33:25 -0700108/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700109#define AUDIT_MAC_IPSEC_DELSA 1412
Ben Cheng655a7c02013-10-16 16:09:24 -0700110#define AUDIT_MAC_IPSEC_ADDSPD 1413
111#define AUDIT_MAC_IPSEC_DELSPD 1414
112#define AUDIT_MAC_IPSEC_EVENT 1415
Christopher Ferris38062f92014-07-09 15:33:25 -0700113/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700114#define AUDIT_MAC_UNLBL_STCADD 1416
Ben Cheng655a7c02013-10-16 16:09:24 -0700115#define AUDIT_MAC_UNLBL_STCDEL 1417
116#define AUDIT_FIRST_KERN_ANOM_MSG 1700
117#define AUDIT_LAST_KERN_ANOM_MSG 1799
Christopher Ferris38062f92014-07-09 15:33:25 -0700118/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700119#define AUDIT_ANOM_PROMISCUOUS 1700
Ben Cheng655a7c02013-10-16 16:09:24 -0700120#define AUDIT_ANOM_ABEND 1701
121#define AUDIT_ANOM_LINK 1702
122#define AUDIT_INTEGRITY_DATA 1800
Christopher Ferris38062f92014-07-09 15:33:25 -0700123/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700124#define AUDIT_INTEGRITY_METADATA 1801
Ben Cheng655a7c02013-10-16 16:09:24 -0700125#define AUDIT_INTEGRITY_STATUS 1802
126#define AUDIT_INTEGRITY_HASH 1803
127#define AUDIT_INTEGRITY_PCR 1804
Christopher Ferris38062f92014-07-09 15:33:25 -0700128/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700129#define AUDIT_INTEGRITY_RULE 1805
Ben Cheng655a7c02013-10-16 16:09:24 -0700130#define AUDIT_KERNEL 2000
131#define AUDIT_FILTER_USER 0x00
132#define AUDIT_FILTER_TASK 0x01
Christopher Ferris38062f92014-07-09 15:33:25 -0700133/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700134#define AUDIT_FILTER_ENTRY 0x02
Ben Cheng655a7c02013-10-16 16:09:24 -0700135#define AUDIT_FILTER_WATCH 0x03
136#define AUDIT_FILTER_EXIT 0x04
137#define AUDIT_FILTER_TYPE 0x05
Christopher Ferris38062f92014-07-09 15:33:25 -0700138/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700139#define AUDIT_NR_FILTERS 6
Ben Cheng655a7c02013-10-16 16:09:24 -0700140#define AUDIT_FILTER_PREPEND 0x10
141#define AUDIT_NEVER 0
142#define AUDIT_POSSIBLE 1
Christopher Ferris38062f92014-07-09 15:33:25 -0700143/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700144#define AUDIT_ALWAYS 2
Ben Cheng655a7c02013-10-16 16:09:24 -0700145#define AUDIT_MAX_FIELDS 64
146#define AUDIT_MAX_KEY_LEN 256
147#define AUDIT_BITMASK_SIZE 64
Christopher Ferris38062f92014-07-09 15:33:25 -0700148/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700149#define AUDIT_WORD(nr) ((__u32)((nr)/32))
Ben Cheng655a7c02013-10-16 16:09:24 -0700150#define AUDIT_BIT(nr) (1 << ((nr) - AUDIT_WORD(nr)*32))
151#define AUDIT_SYSCALL_CLASSES 16
152#define AUDIT_CLASS_DIR_WRITE 0
Christopher Ferris38062f92014-07-09 15:33:25 -0700153/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700154#define AUDIT_CLASS_DIR_WRITE_32 1
Ben Cheng655a7c02013-10-16 16:09:24 -0700155#define AUDIT_CLASS_CHATTR 2
156#define AUDIT_CLASS_CHATTR_32 3
157#define AUDIT_CLASS_READ 4
Christopher Ferris38062f92014-07-09 15:33:25 -0700158/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700159#define AUDIT_CLASS_READ_32 5
Ben Cheng655a7c02013-10-16 16:09:24 -0700160#define AUDIT_CLASS_WRITE 6
161#define AUDIT_CLASS_WRITE_32 7
162#define AUDIT_CLASS_SIGNAL 8
Christopher Ferris38062f92014-07-09 15:33:25 -0700163/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700164#define AUDIT_CLASS_SIGNAL_32 9
Ben Cheng655a7c02013-10-16 16:09:24 -0700165#define AUDIT_UNUSED_BITS 0x07FFFC00
166#define AUDIT_COMPARE_UID_TO_OBJ_UID 1
167#define AUDIT_COMPARE_GID_TO_OBJ_GID 2
Christopher Ferris38062f92014-07-09 15:33:25 -0700168/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700169#define AUDIT_COMPARE_EUID_TO_OBJ_UID 3
Ben Cheng655a7c02013-10-16 16:09:24 -0700170#define AUDIT_COMPARE_EGID_TO_OBJ_GID 4
171#define AUDIT_COMPARE_AUID_TO_OBJ_UID 5
172#define AUDIT_COMPARE_SUID_TO_OBJ_UID 6
Christopher Ferris38062f92014-07-09 15:33:25 -0700173/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700174#define AUDIT_COMPARE_SGID_TO_OBJ_GID 7
Ben Cheng655a7c02013-10-16 16:09:24 -0700175#define AUDIT_COMPARE_FSUID_TO_OBJ_UID 8
176#define AUDIT_COMPARE_FSGID_TO_OBJ_GID 9
177#define AUDIT_COMPARE_UID_TO_AUID 10
Christopher Ferris38062f92014-07-09 15:33:25 -0700178/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700179#define AUDIT_COMPARE_UID_TO_EUID 11
Ben Cheng655a7c02013-10-16 16:09:24 -0700180#define AUDIT_COMPARE_UID_TO_FSUID 12
181#define AUDIT_COMPARE_UID_TO_SUID 13
182#define AUDIT_COMPARE_AUID_TO_FSUID 14
Christopher Ferris38062f92014-07-09 15:33:25 -0700183/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700184#define AUDIT_COMPARE_AUID_TO_SUID 15
Ben Cheng655a7c02013-10-16 16:09:24 -0700185#define AUDIT_COMPARE_AUID_TO_EUID 16
186#define AUDIT_COMPARE_EUID_TO_SUID 17
187#define AUDIT_COMPARE_EUID_TO_FSUID 18
Christopher Ferris38062f92014-07-09 15:33:25 -0700188/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700189#define AUDIT_COMPARE_SUID_TO_FSUID 19
Ben Cheng655a7c02013-10-16 16:09:24 -0700190#define AUDIT_COMPARE_GID_TO_EGID 20
191#define AUDIT_COMPARE_GID_TO_FSGID 21
192#define AUDIT_COMPARE_GID_TO_SGID 22
Christopher Ferris38062f92014-07-09 15:33:25 -0700193/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700194#define AUDIT_COMPARE_EGID_TO_FSGID 23
Ben Cheng655a7c02013-10-16 16:09:24 -0700195#define AUDIT_COMPARE_EGID_TO_SGID 24
196#define AUDIT_COMPARE_SGID_TO_FSGID 25
197#define AUDIT_MAX_FIELD_COMPARE AUDIT_COMPARE_SGID_TO_FSGID
Christopher Ferris38062f92014-07-09 15:33:25 -0700198/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700199#define AUDIT_PID 0
Ben Cheng655a7c02013-10-16 16:09:24 -0700200#define AUDIT_UID 1
201#define AUDIT_EUID 2
202#define AUDIT_SUID 3
Christopher Ferris38062f92014-07-09 15:33:25 -0700203/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700204#define AUDIT_FSUID 4
Ben Cheng655a7c02013-10-16 16:09:24 -0700205#define AUDIT_GID 5
206#define AUDIT_EGID 6
207#define AUDIT_SGID 7
Christopher Ferris38062f92014-07-09 15:33:25 -0700208/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700209#define AUDIT_FSGID 8
Ben Cheng655a7c02013-10-16 16:09:24 -0700210#define AUDIT_LOGINUID 9
211#define AUDIT_PERS 10
212#define AUDIT_ARCH 11
Christopher Ferris38062f92014-07-09 15:33:25 -0700213/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700214#define AUDIT_MSGTYPE 12
Ben Cheng655a7c02013-10-16 16:09:24 -0700215#define AUDIT_SUBJ_USER 13
216#define AUDIT_SUBJ_ROLE 14
217#define AUDIT_SUBJ_TYPE 15
Christopher Ferris38062f92014-07-09 15:33:25 -0700218/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700219#define AUDIT_SUBJ_SEN 16
Ben Cheng655a7c02013-10-16 16:09:24 -0700220#define AUDIT_SUBJ_CLR 17
221#define AUDIT_PPID 18
222#define AUDIT_OBJ_USER 19
Christopher Ferris38062f92014-07-09 15:33:25 -0700223/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700224#define AUDIT_OBJ_ROLE 20
Ben Cheng655a7c02013-10-16 16:09:24 -0700225#define AUDIT_OBJ_TYPE 21
226#define AUDIT_OBJ_LEV_LOW 22
227#define AUDIT_OBJ_LEV_HIGH 23
Christopher Ferris38062f92014-07-09 15:33:25 -0700228/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700229#define AUDIT_LOGINUID_SET 24
Ben Cheng655a7c02013-10-16 16:09:24 -0700230#define AUDIT_DEVMAJOR 100
231#define AUDIT_DEVMINOR 101
232#define AUDIT_INODE 102
Christopher Ferris38062f92014-07-09 15:33:25 -0700233/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700234#define AUDIT_EXIT 103
Ben Cheng655a7c02013-10-16 16:09:24 -0700235#define AUDIT_SUCCESS 104
236#define AUDIT_WATCH 105
237#define AUDIT_PERM 106
Christopher Ferris38062f92014-07-09 15:33:25 -0700238/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700239#define AUDIT_DIR 107
Ben Cheng655a7c02013-10-16 16:09:24 -0700240#define AUDIT_FILETYPE 108
241#define AUDIT_OBJ_UID 109
242#define AUDIT_OBJ_GID 110
Christopher Ferris38062f92014-07-09 15:33:25 -0700243/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700244#define AUDIT_FIELD_COMPARE 111
Ben Cheng655a7c02013-10-16 16:09:24 -0700245#define AUDIT_ARG0 200
246#define AUDIT_ARG1 (AUDIT_ARG0+1)
247#define AUDIT_ARG2 (AUDIT_ARG0+2)
Christopher Ferris38062f92014-07-09 15:33:25 -0700248/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700249#define AUDIT_ARG3 (AUDIT_ARG0+3)
Ben Cheng655a7c02013-10-16 16:09:24 -0700250#define AUDIT_FILTERKEY 210
251#define AUDIT_NEGATE 0x80000000
252#define AUDIT_BIT_MASK 0x08000000
Christopher Ferris38062f92014-07-09 15:33:25 -0700253/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700254#define AUDIT_LESS_THAN 0x10000000
Ben Cheng655a7c02013-10-16 16:09:24 -0700255#define AUDIT_GREATER_THAN 0x20000000
256#define AUDIT_NOT_EQUAL 0x30000000
257#define AUDIT_EQUAL 0x40000000
Christopher Ferris38062f92014-07-09 15:33:25 -0700258/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700259#define AUDIT_BIT_TEST (AUDIT_BIT_MASK|AUDIT_EQUAL)
Ben Cheng655a7c02013-10-16 16:09:24 -0700260#define AUDIT_LESS_THAN_OR_EQUAL (AUDIT_LESS_THAN|AUDIT_EQUAL)
261#define AUDIT_GREATER_THAN_OR_EQUAL (AUDIT_GREATER_THAN|AUDIT_EQUAL)
262#define AUDIT_OPERATORS (AUDIT_EQUAL|AUDIT_NOT_EQUAL|AUDIT_BIT_MASK)
Christopher Ferris38062f92014-07-09 15:33:25 -0700263/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700264enum {
Ben Cheng655a7c02013-10-16 16:09:24 -0700265 Audit_equal,
266 Audit_not_equal,
267 Audit_bitmask,
Christopher Ferris38062f92014-07-09 15:33:25 -0700268/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700269 Audit_bittest,
Ben Cheng655a7c02013-10-16 16:09:24 -0700270 Audit_lt,
271 Audit_gt,
272 Audit_le,
Christopher Ferris38062f92014-07-09 15:33:25 -0700273/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700274 Audit_ge,
Ben Cheng655a7c02013-10-16 16:09:24 -0700275 Audit_bad
276};
277#define AUDIT_STATUS_ENABLED 0x0001
Christopher Ferris38062f92014-07-09 15:33:25 -0700278/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700279#define AUDIT_STATUS_FAILURE 0x0002
Ben Cheng655a7c02013-10-16 16:09:24 -0700280#define AUDIT_STATUS_PID 0x0004
281#define AUDIT_STATUS_RATE_LIMIT 0x0008
282#define AUDIT_STATUS_BACKLOG_LIMIT 0x0010
283/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700284#define AUDIT_STATUS_BACKLOG_WAIT_TIME 0x0020
Christopher Ferris38062f92014-07-09 15:33:25 -0700285#define AUDIT_VERSION_BACKLOG_LIMIT 1
286#define AUDIT_VERSION_BACKLOG_WAIT_TIME 2
287#define AUDIT_VERSION_LATEST AUDIT_VERSION_BACKLOG_WAIT_TIME
Christopher Ferris38062f92014-07-09 15:33:25 -0700288/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700289#define AUDIT_FAIL_SILENT 0
Ben Cheng655a7c02013-10-16 16:09:24 -0700290#define AUDIT_FAIL_PRINTK 1
291#define AUDIT_FAIL_PANIC 2
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700292#define __AUDIT_ARCH_CONVENTION_MASK 0x30000000
293/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
294#define __AUDIT_ARCH_CONVENTION_MIPS64_N32 0x20000000
Ben Cheng655a7c02013-10-16 16:09:24 -0700295#define __AUDIT_ARCH_64BIT 0x80000000
Ben Cheng655a7c02013-10-16 16:09:24 -0700296#define __AUDIT_ARCH_LE 0x40000000
Christopher Ferris82d75042015-01-26 10:57:07 -0800297#define AUDIT_ARCH_AARCH64 (EM_AARCH64|__AUDIT_ARCH_64BIT|__AUDIT_ARCH_LE)
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700298/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris82d75042015-01-26 10:57:07 -0800299#define AUDIT_ARCH_ALPHA (EM_ALPHA|__AUDIT_ARCH_64BIT|__AUDIT_ARCH_LE)
Ben Cheng655a7c02013-10-16 16:09:24 -0700300#define AUDIT_ARCH_ARM (EM_ARM|__AUDIT_ARCH_LE)
301#define AUDIT_ARCH_ARMEB (EM_ARM)
Ben Cheng655a7c02013-10-16 16:09:24 -0700302#define AUDIT_ARCH_CRIS (EM_CRIS|__AUDIT_ARCH_LE)
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700303/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris82d75042015-01-26 10:57:07 -0800304#define AUDIT_ARCH_FRV (EM_FRV)
Christopher Ferris38062f92014-07-09 15:33:25 -0700305#define AUDIT_ARCH_I386 (EM_386|__AUDIT_ARCH_LE)
Ben Cheng655a7c02013-10-16 16:09:24 -0700306#define AUDIT_ARCH_IA64 (EM_IA_64|__AUDIT_ARCH_64BIT|__AUDIT_ARCH_LE)
307#define AUDIT_ARCH_M32R (EM_M32R)
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700308/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris82d75042015-01-26 10:57:07 -0800309#define AUDIT_ARCH_M68K (EM_68K)
310#define AUDIT_ARCH_MICROBLAZE (EM_MICROBLAZE)
Ben Cheng655a7c02013-10-16 16:09:24 -0700311#define AUDIT_ARCH_MIPS (EM_MIPS)
Ben Cheng655a7c02013-10-16 16:09:24 -0700312#define AUDIT_ARCH_MIPSEL (EM_MIPS|__AUDIT_ARCH_LE)
Christopher Ferris82d75042015-01-26 10:57:07 -0800313/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -0700314#define AUDIT_ARCH_MIPS64 (EM_MIPS|__AUDIT_ARCH_64BIT)
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700315#define AUDIT_ARCH_MIPS64N32 (EM_MIPS|__AUDIT_ARCH_64BIT| __AUDIT_ARCH_CONVENTION_MIPS64_N32)
Ben Cheng655a7c02013-10-16 16:09:24 -0700316#define AUDIT_ARCH_MIPSEL64 (EM_MIPS|__AUDIT_ARCH_64BIT|__AUDIT_ARCH_LE)
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700317#define AUDIT_ARCH_MIPSEL64N32 (EM_MIPS|__AUDIT_ARCH_64BIT|__AUDIT_ARCH_LE| __AUDIT_ARCH_CONVENTION_MIPS64_N32)
Christopher Ferris82d75042015-01-26 10:57:07 -0800318/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -0700319#define AUDIT_ARCH_OPENRISC (EM_OPENRISC)
Ben Cheng655a7c02013-10-16 16:09:24 -0700320#define AUDIT_ARCH_PARISC (EM_PARISC)
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700321#define AUDIT_ARCH_PARISC64 (EM_PARISC|__AUDIT_ARCH_64BIT)
Ben Cheng655a7c02013-10-16 16:09:24 -0700322#define AUDIT_ARCH_PPC (EM_PPC)
Christopher Ferris38062f92014-07-09 15:33:25 -0700323/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris82d75042015-01-26 10:57:07 -0800324#define AUDIT_ARCH_PPC64 (EM_PPC64|__AUDIT_ARCH_64BIT)
325#define AUDIT_ARCH_PPC64LE (EM_PPC64|__AUDIT_ARCH_64BIT|__AUDIT_ARCH_LE)
326#define AUDIT_ARCH_S390 (EM_S390)
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700327#define AUDIT_ARCH_S390X (EM_S390|__AUDIT_ARCH_64BIT)
Christopher Ferris82d75042015-01-26 10:57:07 -0800328/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -0700329#define AUDIT_ARCH_SH (EM_SH)
330#define AUDIT_ARCH_SHEL (EM_SH|__AUDIT_ARCH_LE)
Ben Cheng655a7c02013-10-16 16:09:24 -0700331#define AUDIT_ARCH_SH64 (EM_SH|__AUDIT_ARCH_64BIT)
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700332#define AUDIT_ARCH_SHEL64 (EM_SH|__AUDIT_ARCH_64BIT|__AUDIT_ARCH_LE)
Christopher Ferris82d75042015-01-26 10:57:07 -0800333/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -0700334#define AUDIT_ARCH_SPARC (EM_SPARC)
335#define AUDIT_ARCH_SPARC64 (EM_SPARCV9|__AUDIT_ARCH_64BIT)
Ben Cheng655a7c02013-10-16 16:09:24 -0700336#define AUDIT_ARCH_X86_64 (EM_X86_64|__AUDIT_ARCH_64BIT|__AUDIT_ARCH_LE)
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700337#define AUDIT_PERM_EXEC 1
Christopher Ferris82d75042015-01-26 10:57:07 -0800338/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -0700339#define AUDIT_PERM_WRITE 2
340#define AUDIT_PERM_READ 4
Ben Cheng655a7c02013-10-16 16:09:24 -0700341#define AUDIT_PERM_ATTR 8
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700342#define AUDIT_MESSAGE_TEXT_MAX 8560
Christopher Ferris82d75042015-01-26 10:57:07 -0800343/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700344enum audit_nlgrps {
345 AUDIT_NLGRP_NONE,
346 AUDIT_NLGRP_READLOG,
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700347 __AUDIT_NLGRP_MAX
Christopher Ferris82d75042015-01-26 10:57:07 -0800348/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700349};
350#define AUDIT_NLGRP_MAX (__AUDIT_NLGRP_MAX - 1)
Ben Cheng655a7c02013-10-16 16:09:24 -0700351struct audit_status {
352 __u32 mask;
Christopher Ferris82d75042015-01-26 10:57:07 -0800353/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -0700354 __u32 enabled;
Ben Cheng655a7c02013-10-16 16:09:24 -0700355 __u32 failure;
356 __u32 pid;
357 __u32 rate_limit;
Christopher Ferris82d75042015-01-26 10:57:07 -0800358/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -0700359 __u32 backlog_limit;
Ben Cheng655a7c02013-10-16 16:09:24 -0700360 __u32 lost;
Christopher Ferris38062f92014-07-09 15:33:25 -0700361 __u32 backlog;
362 __u32 version;
Christopher Ferris82d75042015-01-26 10:57:07 -0800363/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris38062f92014-07-09 15:33:25 -0700364 __u32 backlog_wait_time;
365};
Christopher Ferris38062f92014-07-09 15:33:25 -0700366struct audit_features {
367#define AUDIT_FEATURE_VERSION 1
Christopher Ferris82d75042015-01-26 10:57:07 -0800368/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris38062f92014-07-09 15:33:25 -0700369 __u32 vers;
370 __u32 mask;
Christopher Ferris38062f92014-07-09 15:33:25 -0700371 __u32 features;
372 __u32 lock;
Christopher Ferris82d75042015-01-26 10:57:07 -0800373/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris38062f92014-07-09 15:33:25 -0700374};
375#define AUDIT_FEATURE_ONLY_UNSET_LOGINUID 0
Christopher Ferris38062f92014-07-09 15:33:25 -0700376#define AUDIT_FEATURE_LOGINUID_IMMUTABLE 1
377#define AUDIT_LAST_FEATURE AUDIT_FEATURE_LOGINUID_IMMUTABLE
Christopher Ferris82d75042015-01-26 10:57:07 -0800378/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferris38062f92014-07-09 15:33:25 -0700379#define audit_feature_valid(x) ((x) >= 0 && (x) <= AUDIT_LAST_FEATURE)
380#define AUDIT_FEATURE_TO_MASK(x) (1 << ((x) & 31))
Christopher Ferris38062f92014-07-09 15:33:25 -0700381struct audit_tty_status {
Ben Cheng655a7c02013-10-16 16:09:24 -0700382 __u32 enabled;
Christopher Ferris82d75042015-01-26 10:57:07 -0800383/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -0700384 __u32 log_passwd;
385};
Christopher Ferris38062f92014-07-09 15:33:25 -0700386#define AUDIT_UID_UNSET (unsigned int)-1
387struct audit_rule_data {
Christopher Ferris82d75042015-01-26 10:57:07 -0800388/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -0700389 __u32 flags;
390 __u32 action;
391 __u32 field_count;
392 __u32 mask[AUDIT_BITMASK_SIZE];
Christopher Ferris82d75042015-01-26 10:57:07 -0800393/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -0700394 __u32 fields[AUDIT_MAX_FIELDS];
395 __u32 values[AUDIT_MAX_FIELDS];
396 __u32 fieldflags[AUDIT_MAX_FIELDS];
397 __u32 buflen;
Christopher Ferris82d75042015-01-26 10:57:07 -0800398/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -0700399 char buf[0];
400};
Ben Cheng655a7c02013-10-16 16:09:24 -0700401#endif