diff options
Diffstat (limited to 'security/integrity/integrity.h')
-rw-r--r-- | security/integrity/integrity.h | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/security/integrity/integrity.h b/security/integrity/integrity.h index f86731649f54..0b02ea868e30 100644 --- a/security/integrity/integrity.h +++ b/security/integrity/integrity.h | |||
@@ -59,20 +59,29 @@ enum evm_ima_xattr_type { | |||
59 | struct evm_ima_xattr_data { | 59 | struct evm_ima_xattr_data { |
60 | u8 type; | 60 | u8 type; |
61 | u8 digest[SHA1_DIGEST_SIZE]; | 61 | u8 digest[SHA1_DIGEST_SIZE]; |
62 | } __attribute__((packed)); | 62 | } __packed; |
63 | |||
64 | #define IMA_MAX_DIGEST_SIZE 64 | ||
65 | |||
66 | struct ima_digest_data { | ||
67 | u8 algo; | ||
68 | u8 length; | ||
69 | u8 type; | ||
70 | u8 digest[IMA_MAX_DIGEST_SIZE]; | ||
71 | } __packed; | ||
63 | 72 | ||
64 | /* integrity data associated with an inode */ | 73 | /* integrity data associated with an inode */ |
65 | struct integrity_iint_cache { | 74 | struct integrity_iint_cache { |
66 | struct rb_node rb_node; /* rooted in integrity_iint_tree */ | 75 | struct rb_node rb_node; /* rooted in integrity_iint_tree */ |
67 | struct inode *inode; /* back pointer to inode in question */ | 76 | struct inode *inode; /* back pointer to inode in question */ |
68 | u64 version; /* track inode changes */ | 77 | u64 version; /* track inode changes */ |
69 | unsigned long flags; | 78 | unsigned long flags; |
70 | struct evm_ima_xattr_data ima_xattr; | ||
71 | enum integrity_status ima_file_status:4; | 79 | enum integrity_status ima_file_status:4; |
72 | enum integrity_status ima_mmap_status:4; | 80 | enum integrity_status ima_mmap_status:4; |
73 | enum integrity_status ima_bprm_status:4; | 81 | enum integrity_status ima_bprm_status:4; |
74 | enum integrity_status ima_module_status:4; | 82 | enum integrity_status ima_module_status:4; |
75 | enum integrity_status evm_status:4; | 83 | enum integrity_status evm_status:4; |
84 | struct ima_digest_data ima_hash; | ||
76 | }; | 85 | }; |
77 | 86 | ||
78 | /* rbtree tree calls to lookup, insert, delete | 87 | /* rbtree tree calls to lookup, insert, delete |