Lines Matching refs:idmap
143 void ksmbd_vfs_query_maximal_access(struct mnt_idmap *idmap, in ksmbd_vfs_query_maximal_access() argument
148 if (!inode_permission(idmap, d_inode(dentry), MAY_OPEN | MAY_WRITE)) in ksmbd_vfs_query_maximal_access()
154 if (!inode_permission(idmap, d_inode(dentry), MAY_OPEN | MAY_READ)) in ksmbd_vfs_query_maximal_access()
157 if (!inode_permission(idmap, d_inode(dentry), MAY_OPEN | MAY_EXEC)) in ksmbd_vfs_query_maximal_access()
160 if (!inode_permission(idmap, d_inode(dentry->d_parent), MAY_EXEC | MAY_WRITE)) in ksmbd_vfs_query_maximal_access()
212 struct mnt_idmap *idmap; in ksmbd_vfs_mkdir() local
228 idmap = mnt_idmap(path.mnt); in ksmbd_vfs_mkdir()
230 err = vfs_mkdir(idmap, d_inode(path.dentry), dentry, mode); in ksmbd_vfs_mkdir()
234 d = lookup_one(idmap, dentry->d_name.name, dentry->d_parent, in ksmbd_vfs_mkdir()
257 static ssize_t ksmbd_vfs_getcasexattr(struct mnt_idmap *idmap, in ksmbd_vfs_getcasexattr() argument
274 value_len = ksmbd_vfs_getxattr(idmap, in ksmbd_vfs_getcasexattr()
421 struct mnt_idmap *idmap = file_mnt_idmap(fp->filp); in ksmbd_vfs_stream_write() local
435 v_len = ksmbd_vfs_getcasexattr(idmap, in ksmbd_vfs_stream_write()
461 err = ksmbd_vfs_setxattr(idmap, in ksmbd_vfs_stream_write()
600 struct mnt_idmap *idmap; in ksmbd_vfs_remove_file() local
612 idmap = mnt_idmap(path->mnt); in ksmbd_vfs_remove_file()
614 err = vfs_rmdir(idmap, d_inode(parent), path->dentry); in ksmbd_vfs_remove_file()
618 err = vfs_unlink(idmap, d_inode(parent), path->dentry, NULL); in ksmbd_vfs_remove_file()
883 static ssize_t ksmbd_vfs_xattr_len(struct mnt_idmap *idmap, in ksmbd_vfs_xattr_len() argument
886 return vfs_getxattr(idmap, dentry, xattr_name, NULL, 0); in ksmbd_vfs_xattr_len()
898 ssize_t ksmbd_vfs_getxattr(struct mnt_idmap *idmap, in ksmbd_vfs_getxattr() argument
906 xattr_len = ksmbd_vfs_xattr_len(idmap, dentry, xattr_name); in ksmbd_vfs_getxattr()
914 xattr_len = vfs_getxattr(idmap, dentry, xattr_name, in ksmbd_vfs_getxattr()
935 int ksmbd_vfs_setxattr(struct mnt_idmap *idmap, in ksmbd_vfs_setxattr() argument
948 err = vfs_setxattr(idmap, in ksmbd_vfs_setxattr()
1060 int ksmbd_vfs_remove_xattr(struct mnt_idmap *idmap, in ksmbd_vfs_remove_xattr() argument
1072 err = vfs_removexattr(idmap, path->dentry, attr_name); in ksmbd_vfs_remove_xattr()
1084 struct mnt_idmap *idmap = file_mnt_idmap(filp); in ksmbd_vfs_unlink() local
1097 err = vfs_rmdir(idmap, d_inode(dir), dentry); in ksmbd_vfs_unlink()
1099 err = vfs_unlink(idmap, d_inode(dir), dentry, NULL); in ksmbd_vfs_unlink()
1327 int ksmbd_vfs_remove_acl_xattrs(struct mnt_idmap *idmap, in ksmbd_vfs_remove_acl_xattrs() argument
1354 err = vfs_remove_acl(idmap, path->dentry, name); in ksmbd_vfs_remove_acl_xattrs()
1367 int ksmbd_vfs_remove_sd_xattrs(struct mnt_idmap *idmap, const struct path *path) in ksmbd_vfs_remove_sd_xattrs() argument
1386 err = ksmbd_vfs_remove_xattr(idmap, path, name, true); in ksmbd_vfs_remove_sd_xattrs()
1396 static struct xattr_smb_acl *ksmbd_vfs_make_xattr_posix_acl(struct mnt_idmap *idmap, in ksmbd_vfs_make_xattr_posix_acl() argument
1426 xa_entry->uid = posix_acl_uid_translate(idmap, pa_entry); in ksmbd_vfs_make_xattr_posix_acl()
1433 xa_entry->gid = posix_acl_gid_translate(idmap, pa_entry); in ksmbd_vfs_make_xattr_posix_acl()
1462 struct mnt_idmap *idmap, in ksmbd_vfs_set_sd_xattr() argument
1497 smb_acl = ksmbd_vfs_make_xattr_posix_acl(idmap, inode, in ksmbd_vfs_set_sd_xattr()
1500 def_smb_acl = ksmbd_vfs_make_xattr_posix_acl(idmap, inode, in ksmbd_vfs_set_sd_xattr()
1503 rc = ndr_encode_posix_acl(&acl_ndr, idmap, inode, in ksmbd_vfs_set_sd_xattr()
1523 rc = ksmbd_vfs_setxattr(idmap, path, in ksmbd_vfs_set_sd_xattr()
1538 struct mnt_idmap *idmap, in ksmbd_vfs_get_sd_xattr() argument
1550 rc = ksmbd_vfs_getxattr(idmap, dentry, XATTR_NAME_SD, &n.data); in ksmbd_vfs_get_sd_xattr()
1559 smb_acl = ksmbd_vfs_make_xattr_posix_acl(idmap, inode, in ksmbd_vfs_get_sd_xattr()
1562 def_smb_acl = ksmbd_vfs_make_xattr_posix_acl(idmap, inode, in ksmbd_vfs_get_sd_xattr()
1565 rc = ndr_encode_posix_acl(&acl_ndr, idmap, inode, smb_acl, in ksmbd_vfs_get_sd_xattr()
1612 int ksmbd_vfs_set_dos_attrib_xattr(struct mnt_idmap *idmap, in ksmbd_vfs_set_dos_attrib_xattr() argument
1624 err = ksmbd_vfs_setxattr(idmap, path, XATTR_NAME_DOS_ATTRIBUTE, in ksmbd_vfs_set_dos_attrib_xattr()
1633 int ksmbd_vfs_get_dos_attrib_xattr(struct mnt_idmap *idmap, in ksmbd_vfs_get_dos_attrib_xattr() argument
1640 err = ksmbd_vfs_getxattr(idmap, dentry, XATTR_NAME_DOS_ATTRIBUTE, in ksmbd_vfs_get_dos_attrib_xattr()
1689 struct mnt_idmap *idmap, in ksmbd_vfs_fill_dentry_attrs() argument
1723 rc = ksmbd_vfs_get_dos_attrib_xattr(idmap, dentry, &da); in ksmbd_vfs_fill_dentry_attrs()
1735 ssize_t ksmbd_vfs_casexattr_len(struct mnt_idmap *idmap, in ksmbd_vfs_casexattr_len() argument
1752 value_len = ksmbd_vfs_xattr_len(idmap, dentry, name); in ksmbd_vfs_casexattr_len()
1864 int ksmbd_vfs_set_init_posix_acl(struct mnt_idmap *idmap, in ksmbd_vfs_set_init_posix_acl() argument
1900 rc = set_posix_acl(idmap, dentry, ACL_TYPE_ACCESS, acls); in ksmbd_vfs_set_init_posix_acl()
1906 rc = set_posix_acl(idmap, dentry, ACL_TYPE_DEFAULT, acls); in ksmbd_vfs_set_init_posix_acl()
1917 int ksmbd_vfs_inherit_posix_acl(struct mnt_idmap *idmap, in ksmbd_vfs_inherit_posix_acl() argument
1941 rc = set_posix_acl(idmap, dentry, ACL_TYPE_ACCESS, acls); in ksmbd_vfs_inherit_posix_acl()
1946 rc = set_posix_acl(idmap, dentry, ACL_TYPE_DEFAULT, in ksmbd_vfs_inherit_posix_acl()