]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blame - include/linux/evm.h
security: imbed evm calls in security hooks
[mirror_ubuntu-bionic-kernel.git] / include / linux / evm.h
CommitLineData
3e1be52d
MZ
1/*
2 * evm.h
3 *
4 * Copyright (c) 2009 IBM Corporation
5 * Author: Mimi Zohar <zohar@us.ibm.com>
6 */
7
8#ifndef _LINUX_EVM_H
9#define _LINUX_EVM_H
10
11#include <linux/integrity.h>
12
13#ifdef CONFIG_EVM
14extern enum integrity_status evm_verifyxattr(struct dentry *dentry,
15 const char *xattr_name,
16 void *xattr_value,
17 size_t xattr_value_len);
18extern int evm_inode_setxattr(struct dentry *dentry, const char *name,
19 const void *value, size_t size);
20extern void evm_inode_post_setxattr(struct dentry *dentry,
21 const char *xattr_name,
22 const void *xattr_value,
23 size_t xattr_value_len);
24extern int evm_inode_removexattr(struct dentry *dentry, const char *xattr_name);
25#else
26#ifdef CONFIG_INTEGRITY
27static inline enum integrity_status evm_verifyxattr(struct dentry *dentry,
28 const char *xattr_name,
29 void *xattr_value,
30 size_t xattr_value_len)
31{
32 return INTEGRITY_UNKNOWN;
33}
34#endif
35
36static inline int evm_inode_setxattr(struct dentry *dentry, const char *name,
37 const void *value, size_t size)
38{
39 return 0;
40}
41
42static inline void evm_inode_post_setxattr(struct dentry *dentry,
43 const char *xattr_name,
44 const void *xattr_value,
45 size_t xattr_value_len)
46{
47 return;
48}
49
50static inline int evm_inode_removexattr(struct dentry *dentry,
51 const char *xattr_name)
52{
53 return 0;
54}
55#endif /* CONFIG_EVM_H */
56#endif /* LINUX_EVM_H */