blob: c2d6082a1a4cf0f37bcabad5c7e84c5bedd86f31 [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,
17 INTEGRITY_FAIL,
18 INTEGRITY_NOLABEL,
Mimi Zohar566be592011-08-22 09:14:18 -040019 INTEGRITY_NOXATTRS,
Mimi Zohar66dbc3252011-03-15 16:12:09 -040020 INTEGRITY_UNKNOWN,
21};
22
Dmitry Kasatkin6be5cc52011-03-09 14:28:20 -050023/* List of EVM protected security xattrs */
Mimi Zoharf381c272011-03-09 14:13:22 -050024#ifdef CONFIG_INTEGRITY
Dmitry Kasatkinbf2276d2011-10-19 12:04:40 +030025extern struct integrity_iint_cache *integrity_inode_get(struct inode *inode);
Mimi Zoharf381c272011-03-09 14:13:22 -050026extern void integrity_inode_free(struct inode *inode);
Dmitry Kasatkinc9cd2ce2014-11-05 17:01:15 +020027extern void __init integrity_load_keys(void);
Mimi Zoharf381c272011-03-09 14:13:22 -050028
29#else
Dmitry Kasatkinbf2276d2011-10-19 12:04:40 +030030static inline struct integrity_iint_cache *
31 integrity_inode_get(struct inode *inode)
Mimi Zoharf381c272011-03-09 14:13:22 -050032{
Dmitry Kasatkinbf2276d2011-10-19 12:04:40 +030033 return NULL;
Mimi Zoharf381c272011-03-09 14:13:22 -050034}
35
36static inline void integrity_inode_free(struct inode *inode)
37{
38 return;
39}
Dmitry Kasatkinc9cd2ce2014-11-05 17:01:15 +020040
41static inline void integrity_load_keys(void)
42{
43}
Paul Bollee05a4f42013-03-25 21:12:27 +010044#endif /* CONFIG_INTEGRITY */
Dmitry Kasatkinc9cd2ce2014-11-05 17:01:15 +020045
Mimi Zoharf381c272011-03-09 14:13:22 -050046#endif /* _LINUX_INTEGRITY_H */