162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-only */ 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * AppArmor security module 462306a36Sopenharmony_ci * 562306a36Sopenharmony_ci * This file contains AppArmor basic global 662306a36Sopenharmony_ci * 762306a36Sopenharmony_ci * Copyright (C) 1998-2008 Novell/SUSE 862306a36Sopenharmony_ci * Copyright 2009-2017 Canonical Ltd. 962306a36Sopenharmony_ci */ 1062306a36Sopenharmony_ci 1162306a36Sopenharmony_ci#ifndef __APPARMOR_H 1262306a36Sopenharmony_ci#define __APPARMOR_H 1362306a36Sopenharmony_ci 1462306a36Sopenharmony_ci#include <linux/types.h> 1562306a36Sopenharmony_ci 1662306a36Sopenharmony_ci/* 1762306a36Sopenharmony_ci * Class of mediation types in the AppArmor policy db 1862306a36Sopenharmony_ci */ 1962306a36Sopenharmony_ci#define AA_CLASS_NONE 0 2062306a36Sopenharmony_ci#define AA_CLASS_UNKNOWN 1 2162306a36Sopenharmony_ci#define AA_CLASS_FILE 2 2262306a36Sopenharmony_ci#define AA_CLASS_CAP 3 2362306a36Sopenharmony_ci#define AA_CLASS_DEPRECATED 4 2462306a36Sopenharmony_ci#define AA_CLASS_RLIMITS 5 2562306a36Sopenharmony_ci#define AA_CLASS_DOMAIN 6 2662306a36Sopenharmony_ci#define AA_CLASS_MOUNT 7 2762306a36Sopenharmony_ci#define AA_CLASS_PTRACE 9 2862306a36Sopenharmony_ci#define AA_CLASS_SIGNAL 10 2962306a36Sopenharmony_ci#define AA_CLASS_XMATCH 11 3062306a36Sopenharmony_ci#define AA_CLASS_NET 14 3162306a36Sopenharmony_ci#define AA_CLASS_LABEL 16 3262306a36Sopenharmony_ci#define AA_CLASS_POSIX_MQUEUE 17 3362306a36Sopenharmony_ci#define AA_CLASS_IO_URING 18 3462306a36Sopenharmony_ci#define AA_CLASS_MODULE 19 3562306a36Sopenharmony_ci#define AA_CLASS_DISPLAY_LSM 20 3662306a36Sopenharmony_ci 3762306a36Sopenharmony_ci#define AA_CLASS_X 31 3862306a36Sopenharmony_ci#define AA_CLASS_DBUS 32 3962306a36Sopenharmony_ci 4062306a36Sopenharmony_ci#define AA_CLASS_LAST AA_CLASS_DBUS 4162306a36Sopenharmony_ci 4262306a36Sopenharmony_ci/* Control parameters settable through module/boot flags */ 4362306a36Sopenharmony_ciextern enum audit_mode aa_g_audit; 4462306a36Sopenharmony_ciextern bool aa_g_audit_header; 4562306a36Sopenharmony_ciextern bool aa_g_debug; 4662306a36Sopenharmony_ciextern bool aa_g_hash_policy; 4762306a36Sopenharmony_ciextern bool aa_g_export_binary; 4862306a36Sopenharmony_ciextern int aa_g_rawdata_compression_level; 4962306a36Sopenharmony_ciextern bool aa_g_lock_policy; 5062306a36Sopenharmony_ciextern bool aa_g_logsyscall; 5162306a36Sopenharmony_ciextern bool aa_g_paranoid_load; 5262306a36Sopenharmony_ciextern unsigned int aa_g_path_max; 5362306a36Sopenharmony_ci 5462306a36Sopenharmony_ci#ifdef CONFIG_SECURITY_APPARMOR_EXPORT_BINARY 5562306a36Sopenharmony_ci#define AA_MIN_CLEVEL zstd_min_clevel() 5662306a36Sopenharmony_ci#define AA_MAX_CLEVEL zstd_max_clevel() 5762306a36Sopenharmony_ci#define AA_DEFAULT_CLEVEL ZSTD_CLEVEL_DEFAULT 5862306a36Sopenharmony_ci#else 5962306a36Sopenharmony_ci#define AA_MIN_CLEVEL 0 6062306a36Sopenharmony_ci#define AA_MAX_CLEVEL 0 6162306a36Sopenharmony_ci#define AA_DEFAULT_CLEVEL 0 6262306a36Sopenharmony_ci#endif /* CONFIG_SECURITY_APPARMOR_EXPORT_BINARY */ 6362306a36Sopenharmony_ci 6462306a36Sopenharmony_ci 6562306a36Sopenharmony_ci#endif /* __APPARMOR_H */ 66