Lines Matching refs:dentry

74 static int evm_find_protected_xattrs(struct dentry *dentry)  in evm_find_protected_xattrs()  argument
76 struct inode *inode = d_backing_inode(dentry); in evm_find_protected_xattrs()
85 error = inode->i_op->getxattr(dentry, *xattr, NULL, 0); in evm_find_protected_xattrs()
110 static enum integrity_status evm_verify_hmac(struct dentry *dentry, in evm_verify_hmac() argument
127 rc = vfs_getxattr_alloc(dentry, XATTR_NAME_EVM, (char **)&xattr_data, 0, in evm_verify_hmac()
132 rc = evm_find_protected_xattrs(dentry); in evm_verify_hmac()
148 rc = evm_calc_hmac(dentry, xattr_name, xattr_value, in evm_verify_hmac()
158 rc = evm_calc_hash(dentry, xattr_name, xattr_value, in evm_verify_hmac()
169 if (!IS_RDONLY(d_backing_inode(dentry)) && in evm_verify_hmac()
170 !IS_IMMUTABLE(d_backing_inode(dentry))) in evm_verify_hmac()
171 evm_update_evmxattr(dentry, xattr_name, in evm_verify_hmac()
230 enum integrity_status evm_verifyxattr(struct dentry *dentry, in evm_verifyxattr() argument
239 iint = integrity_iint_find(d_backing_inode(dentry)); in evm_verifyxattr()
243 return evm_verify_hmac(dentry, xattr_name, xattr_value, in evm_verifyxattr()
255 static enum integrity_status evm_verify_current_integrity(struct dentry *dentry) in evm_verify_current_integrity() argument
257 struct inode *inode = d_backing_inode(dentry); in evm_verify_current_integrity()
261 return evm_verify_hmac(dentry, NULL, NULL, 0, NULL); in evm_verify_current_integrity()
276 static int evm_protect_xattr(struct dentry *dentry, const char *xattr_name, in evm_protect_xattr() argument
287 evm_status = evm_verify_current_integrity(dentry); in evm_protect_xattr()
293 evm_status = evm_verify_current_integrity(dentry); in evm_protect_xattr()
297 iint = integrity_iint_find(d_backing_inode(dentry)); in evm_protect_xattr()
302 if (dentry->d_inode->i_sb->s_magic == TMPFS_MAGIC in evm_protect_xattr()
303 || dentry->d_inode->i_sb->s_magic == SYSFS_MAGIC) in evm_protect_xattr()
307 dentry->d_inode, dentry->d_name.name, in evm_protect_xattr()
314 integrity_audit_msg(AUDIT_INTEGRITY_METADATA, d_backing_inode(dentry), in evm_protect_xattr()
315 dentry->d_name.name, "appraise_metadata", in evm_protect_xattr()
334 int evm_inode_setxattr(struct dentry *dentry, const char *xattr_name, in evm_inode_setxattr() argument
345 return evm_protect_xattr(dentry, xattr_name, xattr_value, in evm_inode_setxattr()
357 int evm_inode_removexattr(struct dentry *dentry, const char *xattr_name) in evm_inode_removexattr() argument
359 return evm_protect_xattr(dentry, xattr_name, NULL, 0); in evm_inode_removexattr()
375 void evm_inode_post_setxattr(struct dentry *dentry, const char *xattr_name, in evm_inode_post_setxattr() argument
382 evm_update_evmxattr(dentry, xattr_name, xattr_value, xattr_value_len); in evm_inode_post_setxattr()
392 void evm_inode_post_removexattr(struct dentry *dentry, const char *xattr_name) in evm_inode_post_removexattr() argument
394 struct inode *inode = d_backing_inode(dentry); in evm_inode_post_removexattr()
400 evm_update_evmxattr(dentry, xattr_name, NULL, 0); in evm_inode_post_removexattr()
408 int evm_inode_setattr(struct dentry *dentry, struct iattr *attr) in evm_inode_setattr() argument
415 evm_status = evm_verify_current_integrity(dentry); in evm_inode_setattr()
419 integrity_audit_msg(AUDIT_INTEGRITY_METADATA, d_backing_inode(dentry), in evm_inode_setattr()
420 dentry->d_name.name, "appraise_metadata", in evm_inode_setattr()
436 void evm_inode_post_setattr(struct dentry *dentry, int ia_valid) in evm_inode_post_setattr() argument
442 evm_update_evmxattr(dentry, NULL, NULL, 0); in evm_inode_post_setattr()