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 ; |
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 */ |
67 | |