]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/blame - include/linux/integrity.h
Merge tag 'staging-5.13-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh...
[mirror_ubuntu-jammy-kernel.git] / include / linux / integrity.h
CommitLineData
b886d83c 1/* SPDX-License-Identifier: GPL-2.0-only */
f381c272
MZ
2/*
3 * Copyright (C) 2009 IBM Corporation
4 * Author: Mimi Zohar <zohar@us.ibm.com>
f381c272
MZ
5 */
6
7#ifndef _LINUX_INTEGRITY_H
8#define _LINUX_INTEGRITY_H
9
10#include <linux/fs.h>
11
66dbc325
MZ
12enum integrity_status {
13 INTEGRITY_PASS = 0,
50b97748 14 INTEGRITY_PASS_IMMUTABLE,
66dbc325
MZ
15 INTEGRITY_FAIL,
16 INTEGRITY_NOLABEL,
566be59a 17 INTEGRITY_NOXATTRS,
66dbc325
MZ
18 INTEGRITY_UNKNOWN,
19};
20
6be5cc52 21/* List of EVM protected security xattrs */
f381c272 22#ifdef CONFIG_INTEGRITY
bf2276d1 23extern struct integrity_iint_cache *integrity_inode_get(struct inode *inode);
f381c272 24extern void integrity_inode_free(struct inode *inode);
c9cd2ce2 25extern void __init integrity_load_keys(void);
f381c272
MZ
26
27#else
bf2276d1
DK
28static inline struct integrity_iint_cache *
29 integrity_inode_get(struct inode *inode)
f381c272 30{
bf2276d1 31 return NULL;
f381c272
MZ
32}
33
34static inline void integrity_inode_free(struct inode *inode)
35{
36 return;
37}
c9cd2ce2
DK
38
39static inline void integrity_load_keys(void)
40{
41}
e05a4f4f 42#endif /* CONFIG_INTEGRITY */
c9cd2ce2 43
6eb864c1
MK
44#ifdef CONFIG_INTEGRITY_ASYMMETRIC_KEYS
45
46extern int integrity_kernel_module_request(char *kmod_name);
47
48#else
49
50static inline int integrity_kernel_module_request(char *kmod_name)
51{
52 return 0;
53}
54
55#endif /* CONFIG_INTEGRITY_ASYMMETRIC_KEYS */
56
f381c272 57#endif /* _LINUX_INTEGRITY_H */