GNU Linux-libre 6.8.9-gnu
[releases.git] / security / apparmor / include / apparmor.h
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 /*
3  * AppArmor security module
4  *
5  * This file contains AppArmor basic global
6  *
7  * Copyright (C) 1998-2008 Novell/SUSE
8  * Copyright 2009-2017 Canonical Ltd.
9  */
10
11 #ifndef __APPARMOR_H
12 #define __APPARMOR_H
13
14 #include <linux/types.h>
15
16 /*
17  * Class of mediation types in the AppArmor policy db
18  */
19 #define AA_CLASS_NONE           0
20 #define AA_CLASS_UNKNOWN        1
21 #define AA_CLASS_FILE           2
22 #define AA_CLASS_CAP            3
23 #define AA_CLASS_DEPRECATED     4
24 #define AA_CLASS_RLIMITS        5
25 #define AA_CLASS_DOMAIN         6
26 #define AA_CLASS_MOUNT          7
27 #define AA_CLASS_PTRACE         9
28 #define AA_CLASS_SIGNAL         10
29 #define AA_CLASS_XMATCH         11
30 #define AA_CLASS_NET            14
31 #define AA_CLASS_LABEL          16
32 #define AA_CLASS_POSIX_MQUEUE   17
33 #define AA_CLASS_MODULE         19
34 #define AA_CLASS_DISPLAY_LSM    20
35 #define AA_CLASS_NS             21
36 #define AA_CLASS_IO_URING       22
37
38 #define AA_CLASS_X              31
39 #define AA_CLASS_DBUS           32
40
41 #define AA_CLASS_LAST           AA_CLASS_DBUS
42
43 /* Control parameters settable through module/boot flags */
44 extern enum audit_mode aa_g_audit;
45 extern bool aa_g_audit_header;
46 extern bool aa_g_debug;
47 extern bool aa_g_hash_policy;
48 extern bool aa_g_export_binary;
49 extern int aa_g_rawdata_compression_level;
50 extern bool aa_g_lock_policy;
51 extern bool aa_g_logsyscall;
52 extern bool aa_g_paranoid_load;
53 extern unsigned int aa_g_path_max;
54
55 #ifdef CONFIG_SECURITY_APPARMOR_EXPORT_BINARY
56 #define AA_MIN_CLEVEL zstd_min_clevel()
57 #define AA_MAX_CLEVEL zstd_max_clevel()
58 #define AA_DEFAULT_CLEVEL ZSTD_CLEVEL_DEFAULT
59 #else
60 #define AA_MIN_CLEVEL 0
61 #define AA_MAX_CLEVEL 0
62 #define AA_DEFAULT_CLEVEL 0
63 #endif /* CONFIG_SECURITY_APPARMOR_EXPORT_BINARY */
64
65
66 #endif /* __APPARMOR_H */