Lines Matching refs:fa
613 static int ovl_security_fileattr(const struct path *realpath, struct fileattr *fa, in ovl_security_fileattr() argument
625 cmd = fa->fsx_valid ? FS_IOC_FSSETXATTR : FS_IOC_SETFLAGS; in ovl_security_fileattr()
627 cmd = fa->fsx_valid ? FS_IOC_FSGETXATTR : FS_IOC_GETFLAGS; in ovl_security_fileattr()
635 int ovl_real_fileattr_set(const struct path *realpath, struct fileattr *fa) in ovl_real_fileattr_set() argument
639 err = ovl_security_fileattr(realpath, fa, true); in ovl_real_fileattr_set()
643 return vfs_fileattr_set(mnt_idmap(realpath->mnt), realpath->dentry, fa); in ovl_real_fileattr_set()
647 struct dentry *dentry, struct fileattr *fa) in ovl_fileattr_set() argument
671 err = ovl_set_protattr(inode, upperpath.dentry, fa); in ovl_fileattr_set()
673 err = ovl_real_fileattr_set(&upperpath, fa); in ovl_fileattr_set()
695 static void ovl_fileattr_prot_flags(struct inode *inode, struct fileattr *fa) in ovl_fileattr_prot_flags() argument
701 fa->flags |= FS_APPEND_FL; in ovl_fileattr_prot_flags()
702 fa->fsx_xflags |= FS_XFLAG_APPEND; in ovl_fileattr_prot_flags()
705 fa->flags |= FS_IMMUTABLE_FL; in ovl_fileattr_prot_flags()
706 fa->fsx_xflags |= FS_XFLAG_IMMUTABLE; in ovl_fileattr_prot_flags()
710 int ovl_real_fileattr_get(const struct path *realpath, struct fileattr *fa) in ovl_real_fileattr_get() argument
714 err = ovl_security_fileattr(realpath, fa, false); in ovl_real_fileattr_get()
718 err = vfs_fileattr_get(realpath->dentry, fa); in ovl_real_fileattr_get()
724 int ovl_fileattr_get(struct dentry *dentry, struct fileattr *fa) in ovl_fileattr_get() argument
734 err = ovl_real_fileattr_get(&realpath, fa); in ovl_fileattr_get()
735 ovl_fileattr_prot_flags(inode, fa); in ovl_fileattr_get()