blob: 858d3f4a22415c2bd72858521bced40a498525d5 [file] [log] [blame]
Mimi Zoharf381c272011-03-09 14:13:22 -05001/*
2 * Copyright (C) 2009 IBM Corporation
3 * Author: Mimi Zohar <zohar@us.ibm.com>
4 *
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation, version 2 of the License.
8 */
9
10#ifndef _LINUX_INTEGRITY_H
11#define _LINUX_INTEGRITY_H
12
13#include <linux/fs.h>
14
Mimi Zohar66dbc3252011-03-15 16:12:09 -040015enum integrity_status {
16 INTEGRITY_PASS = 0,
Matthew Garrett50b97742017-11-07 07:17:42 -080017 INTEGRITY_PASS_IMMUTABLE,
Mimi Zohar66dbc3252011-03-15 16:12:09 -040018 INTEGRITY_FAIL,
19 INTEGRITY_NOLABEL,
Mimi Zohar566be592011-08-22 09:14:18 -040020 INTEGRITY_NOXATTRS,
Mimi Zohar66dbc3252011-03-15 16:12:09 -040021 INTEGRITY_UNKNOWN,
22};
23
Dmitry Kasatkin6be5cc52011-03-09 14:28:20 -050024/* List of EVM protected security xattrs */
Mimi Zoharf381c272011-03-09 14:13:22 -050025#ifdef CONFIG_INTEGRITY
Dmitry Kasatkinbf2276d2011-10-19 12:04:40 +030026extern struct integrity_iint_cache *integrity_inode_get(struct inode *inode);
Mimi Zoharf381c272011-03-09 14:13:22 -050027extern void integrity_inode_free(struct inode *inode);
Dmitry Kasatkinc9cd2ce2014-11-05 17:01:15 +020028extern void __init integrity_load_keys(void);
Mimi Zoharf381c272011-03-09 14:13:22 -050029
30#else
Dmitry Kasatkinbf2276d2011-10-19 12:04:40 +030031static inline struct integrity_iint_cache *
32 integrity_inode_get(struct inode *inode)
Mimi Zoharf381c272011-03-09 14:13:22 -050033{
Dmitry Kasatkinbf2276d2011-10-19 12:04:40 +030034 return NULL;
Mimi Zoharf381c272011-03-09 14:13:22 -050035}
36
37static inline void integrity_inode_free(struct inode *inode)
38{
39 return;
40}
Dmitry Kasatkinc9cd2ce2014-11-05 17:01:15 +020041
42static inline void integrity_load_keys(void)
43{
44}
Paul Bollee05a4f42013-03-25 21:12:27 +010045#endif /* CONFIG_INTEGRITY */
Dmitry Kasatkinc9cd2ce2014-11-05 17:01:15 +020046
Mimi Zoharf381c272011-03-09 14:13:22 -050047#endif /* _LINUX_INTEGRITY_H */