| 
									
										
										
										
											2009-02-04 09:06:57 -05:00
										 |  |  | /*
 | 
					
						
							|  |  |  |  * Copyright (C) 2008 IBM Corporation | 
					
						
							|  |  |  |  * Author: Mimi Zohar <zohar@us.ibm.com> | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * This program is free software; you can redistribute it and/or modify | 
					
						
							|  |  |  |  * it under the terms of the GNU General Public License as published by | 
					
						
							|  |  |  |  * the Free Software Foundation, version 2 of the License. | 
					
						
							|  |  |  |  */ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #ifndef _LINUX_IMA_H
 | 
					
						
							|  |  |  | #define _LINUX_IMA_H
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-02-10 23:01:19 -05:00
										 |  |  | #include <linux/fs.h>
 | 
					
						
							|  |  |  | struct linux_binprm; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-02-04 09:06:58 -05:00
										 |  |  | #ifdef CONFIG_IMA
 | 
					
						
							|  |  |  | extern int ima_bprm_check(struct linux_binprm *bprm); | 
					
						
							| 
									
										
										
										
											2010-01-26 17:02:40 -05:00
										 |  |  | extern int ima_file_check(struct file *file, int mask); | 
					
						
							| 
									
										
										
										
											2009-02-04 09:06:58 -05:00
										 |  |  | extern void ima_file_free(struct file *file); | 
					
						
							|  |  |  | extern int ima_file_mmap(struct file *file, unsigned long prot); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #else
 | 
					
						
							| 
									
										
										
										
											2009-02-04 09:06:57 -05:00
										 |  |  | static inline int ima_bprm_check(struct linux_binprm *bprm) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | 	return 0; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-01-26 17:02:40 -05:00
										 |  |  | static inline int ima_file_check(struct file *file, int mask) | 
					
						
							| 
									
										
										
										
											2009-02-04 09:06:57 -05:00
										 |  |  | { | 
					
						
							|  |  |  | 	return 0; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | static inline void ima_file_free(struct file *file) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | 	return; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | static inline int ima_file_mmap(struct file *file, unsigned long prot) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | 	return 0; | 
					
						
							|  |  |  | } | 
					
						
							| 
									
										
										
										
											2011-03-09 22:57:53 -05:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-02-04 09:06:58 -05:00
										 |  |  | #endif /* CONFIG_IMA_H */
 | 
					
						
							| 
									
										
										
										
											2011-03-09 22:57:53 -05:00
										 |  |  | 
 | 
					
						
							|  |  |  | #ifdef CONFIG_IMA_APPRAISE
 | 
					
						
							|  |  |  | extern void ima_inode_post_setattr(struct dentry *dentry); | 
					
						
							| 
									
										
										
										
											2011-03-10 18:54:15 -05:00
										 |  |  | extern int ima_inode_setxattr(struct dentry *dentry, const char *xattr_name, | 
					
						
							|  |  |  | 		       const void *xattr_value, size_t xattr_value_len); | 
					
						
							|  |  |  | extern int ima_inode_removexattr(struct dentry *dentry, const char *xattr_name); | 
					
						
							| 
									
										
										
										
											2011-03-09 22:57:53 -05:00
										 |  |  | #else
 | 
					
						
							|  |  |  | static inline void ima_inode_post_setattr(struct dentry *dentry) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | 	return; | 
					
						
							|  |  |  | } | 
					
						
							| 
									
										
										
										
											2011-03-10 18:54:15 -05:00
										 |  |  | 
 | 
					
						
							|  |  |  | static inline int ima_inode_setxattr(struct dentry *dentry, | 
					
						
							|  |  |  | 				     const char *xattr_name, | 
					
						
							|  |  |  | 				     const void *xattr_value, | 
					
						
							|  |  |  | 				     size_t xattr_value_len) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | 	return 0; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | static inline int ima_inode_removexattr(struct dentry *dentry, | 
					
						
							|  |  |  | 					const char *xattr_name) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | 	return 0; | 
					
						
							|  |  |  | } | 
					
						
							| 
									
										
										
										
											2011-03-09 22:57:53 -05:00
										 |  |  | #endif /* CONFIG_IMA_APPRAISE_H */
 | 
					
						
							| 
									
										
										
										
											2009-02-04 09:06:57 -05:00
										 |  |  | #endif /* _LINUX_IMA_H */
 |