1 /* SPDX-License-Identifier: GPL-2.0-only */
3 * AppArmor security module
5 * This file contains AppArmor basic global
7 * Copyright (C) 1998-2008 Novell/SUSE
8 * Copyright 2009-2017 Canonical Ltd.
14 #include <linux/types.h>
17 * Class of mediation types in the AppArmor policy db
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
39 #define AA_CLASS_DBUS 32
41 #define AA_CLASS_LAST AA_CLASS_DBUS
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
;
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
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 */
66 #endif /* __APPARMOR_H */