forked from Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
57 lines
1.1 KiB
57 lines
1.1 KiB
/* SPDX-License-Identifier: GPL-2.0-only */ |
|
/* |
|
* Copyright (C) 2009 IBM Corporation |
|
* Author: Mimi Zohar <[email protected]> |
|
*/ |
|
|
|
#ifndef _LINUX_INTEGRITY_H |
|
#define _LINUX_INTEGRITY_H |
|
|
|
#include <linux/fs.h> |
|
|
|
enum integrity_status { |
|
INTEGRITY_PASS = 0, |
|
INTEGRITY_PASS_IMMUTABLE, |
|
INTEGRITY_FAIL, |
|
INTEGRITY_NOLABEL, |
|
INTEGRITY_NOXATTRS, |
|
INTEGRITY_UNKNOWN, |
|
}; |
|
|
|
/* List of EVM protected security xattrs */ |
|
#ifdef CONFIG_INTEGRITY |
|
extern struct integrity_iint_cache *integrity_inode_get(struct inode *inode); |
|
extern void integrity_inode_free(struct inode *inode); |
|
extern void __init integrity_load_keys(void); |
|
|
|
#else |
|
static inline struct integrity_iint_cache * |
|
integrity_inode_get(struct inode *inode) |
|
{ |
|
return NULL; |
|
} |
|
|
|
static inline void integrity_inode_free(struct inode *inode) |
|
{ |
|
return; |
|
} |
|
|
|
static inline void integrity_load_keys(void) |
|
{ |
|
} |
|
#endif /* CONFIG_INTEGRITY */ |
|
|
|
#ifdef CONFIG_INTEGRITY_ASYMMETRIC_KEYS |
|
|
|
extern int integrity_kernel_module_request(char *kmod_name); |
|
|
|
#else |
|
|
|
static inline int integrity_kernel_module_request(char *kmod_name) |
|
{ |
|
return 0; |
|
} |
|
|
|
#endif /* CONFIG_INTEGRITY_ASYMMETRIC_KEYS */ |
|
|
|
#endif /* _LINUX_INTEGRITY_H */
|
|
|