Lines Matching refs:idmap

139 void ksmbd_vfs_query_maximal_access(struct mnt_idmap *idmap,
144 if (!inode_permission(idmap, d_inode(dentry), MAY_OPEN | MAY_WRITE))
150 if (!inode_permission(idmap, d_inode(dentry), MAY_OPEN | MAY_READ))
153 if (!inode_permission(idmap, d_inode(dentry), MAY_OPEN | MAY_EXEC))
156 if (!inode_permission(idmap, d_inode(dentry->d_parent), MAY_EXEC | MAY_WRITE))
208 struct mnt_idmap *idmap;
224 idmap = mnt_idmap(path.mnt);
226 err = vfs_mkdir(idmap, d_inode(path.dentry), dentry, mode);
230 d = lookup_one(idmap, dentry->d_name.name, dentry->d_parent,
253 static ssize_t ksmbd_vfs_getcasexattr(struct mnt_idmap *idmap,
270 value_len = ksmbd_vfs_getxattr(idmap,
417 struct mnt_idmap *idmap = file_mnt_idmap(fp->filp);
431 v_len = ksmbd_vfs_getcasexattr(idmap,
457 err = ksmbd_vfs_setxattr(idmap,
596 struct mnt_idmap *idmap;
608 idmap = mnt_idmap(path->mnt);
610 err = vfs_rmdir(idmap, d_inode(parent), path->dentry);
614 err = vfs_unlink(idmap, d_inode(parent), path->dentry, NULL);
869 static ssize_t ksmbd_vfs_xattr_len(struct mnt_idmap *idmap,
872 return vfs_getxattr(idmap, dentry, xattr_name, NULL, 0);
877 * @idmap: idmap
884 ssize_t ksmbd_vfs_getxattr(struct mnt_idmap *idmap,
892 xattr_len = ksmbd_vfs_xattr_len(idmap, dentry, xattr_name);
900 xattr_len = vfs_getxattr(idmap, dentry, xattr_name,
911 * @idmap: idmap of the relevant mount
921 int ksmbd_vfs_setxattr(struct mnt_idmap *idmap,
934 err = vfs_setxattr(idmap,
1046 int ksmbd_vfs_remove_xattr(struct mnt_idmap *idmap,
1055 err = vfs_removexattr(idmap, path->dentry, attr_name);
1065 struct mnt_idmap *idmap = file_mnt_idmap(filp);
1078 err = vfs_rmdir(idmap, d_inode(dir), dentry);
1080 err = vfs_unlink(idmap, d_inode(dir), dentry, NULL);
1308 int ksmbd_vfs_remove_acl_xattrs(struct mnt_idmap *idmap,
1335 err = vfs_remove_acl(idmap, path->dentry, name);
1348 int ksmbd_vfs_remove_sd_xattrs(struct mnt_idmap *idmap, const struct path *path)
1367 err = ksmbd_vfs_remove_xattr(idmap, path, name);
1377 static struct xattr_smb_acl *ksmbd_vfs_make_xattr_posix_acl(struct mnt_idmap *idmap,
1407 xa_entry->uid = posix_acl_uid_translate(idmap, pa_entry);
1414 xa_entry->gid = posix_acl_gid_translate(idmap, pa_entry);
1443 struct mnt_idmap *idmap,
1478 smb_acl = ksmbd_vfs_make_xattr_posix_acl(idmap, inode,
1481 def_smb_acl = ksmbd_vfs_make_xattr_posix_acl(idmap, inode,
1484 rc = ndr_encode_posix_acl(&acl_ndr, idmap, inode,
1504 rc = ksmbd_vfs_setxattr(idmap, path,
1519 struct mnt_idmap *idmap,
1531 rc = ksmbd_vfs_getxattr(idmap, dentry, XATTR_NAME_SD, &n.data);
1540 smb_acl = ksmbd_vfs_make_xattr_posix_acl(idmap, inode,
1543 def_smb_acl = ksmbd_vfs_make_xattr_posix_acl(idmap, inode,
1546 rc = ndr_encode_posix_acl(&acl_ndr, idmap, inode, smb_acl,
1593 int ksmbd_vfs_set_dos_attrib_xattr(struct mnt_idmap *idmap,
1605 err = ksmbd_vfs_setxattr(idmap, path, XATTR_NAME_DOS_ATTRIBUTE,
1614 int ksmbd_vfs_get_dos_attrib_xattr(struct mnt_idmap *idmap,
1621 err = ksmbd_vfs_getxattr(idmap, dentry, XATTR_NAME_DOS_ATTRIBUTE,
1668 struct mnt_idmap *idmap,
1675 generic_fillattr(idmap, STATX_BASIC_STATS, d_inode(dentry),
1694 rc = ksmbd_vfs_get_dos_attrib_xattr(idmap, dentry, &da);
1706 ssize_t ksmbd_vfs_casexattr_len(struct mnt_idmap *idmap,
1723 value_len = ksmbd_vfs_xattr_len(idmap, dentry, name);
1842 int ksmbd_vfs_set_init_posix_acl(struct mnt_idmap *idmap,
1878 rc = set_posix_acl(idmap, dentry, ACL_TYPE_ACCESS, acls);
1884 rc = set_posix_acl(idmap, dentry, ACL_TYPE_DEFAULT, acls);
1895 int ksmbd_vfs_inherit_posix_acl(struct mnt_idmap *idmap,
1919 rc = set_posix_acl(idmap, dentry, ACL_TYPE_ACCESS, acls);
1924 rc = set_posix_acl(idmap, dentry, ACL_TYPE_DEFAULT,