Something went wrong. Try again.
(I'm so sorry!) Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
Something went wrong. Try again.
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697/* SPDX-License-Identifier: GPL-2.0 *//* * evm.h * * Copyright (c) 2009 IBM Corporation * Author: Mimi Zohar <zohar@us.ibm.com> */
#ifndef _LINUX_EVM_H#define _LINUX_EVM_H
#include <linux/integrity.h>#include <linux/xattr.h>
#ifdef CONFIG_EVMextern int evm_set_key(void *key, size_t keylen);extern enum integrity_status evm_verifyxattr(struct dentry *dentry, const char *xattr_name, void *xattr_value, size_t xattr_value_len);int evm_fix_hmac(struct dentry *dentry, const char *xattr_name, const char *xattr_value, size_t xattr_value_len);int evm_inode_init_security(struct inode *inode, struct inode *dir, const struct qstr *qstr, struct xattr *xattrs, int *xattr_count);extern bool evm_revalidate_status(const char *xattr_name);extern int evm_protected_xattr_if_enabled(const char *req_xattr_name);extern int evm_read_protected_xattrs(struct dentry *dentry, u8 *buffer, int buffer_size, char type, bool canonical_fmt);extern bool evm_metadata_changed(struct inode *inode, struct inode *metadata_inode);#ifdef CONFIG_FS_POSIX_ACLextern int posix_xattr_acl(const char *xattrname);#elsestatic inline int posix_xattr_acl(const char *xattrname){ return 0;}#endif#else
static inline int evm_set_key(void *key, size_t keylen){ return -EOPNOTSUPP;}
#ifdef CONFIG_INTEGRITYstatic inline enum integrity_status evm_verifyxattr(struct dentry *dentry, const char *xattr_name, void *xattr_value, size_t xattr_value_len){ return INTEGRITY_UNKNOWN;}
static inline int evm_fix_hmac(struct dentry *dentry, const char *xattr_name, const char *xattr_value, size_t xattr_value_len){ return -EOPNOTSUPP;}#endif
static inline int evm_inode_init_security(struct inode *inode, struct inode *dir, const struct qstr *qstr, struct xattr *xattrs, int *xattr_count){ return 0;}
static inline bool evm_revalidate_status(const char *xattr_name){ return false;}
static inline int evm_protected_xattr_if_enabled(const char *req_xattr_name){ return false;}
static inline int evm_read_protected_xattrs(struct dentry *dentry, u8 *buffer, int buffer_size, char type, bool canonical_fmt){ return -EOPNOTSUPP;}
static inline bool evm_metadata_changed(struct inode *inode, struct inode *metadata_inode){ return false;}
#endif /* CONFIG_EVM */#endif /* LINUX_EVM_H */