Home
last modified time | relevance | path

Searched refs:mnt_userns (Results 1 – 25 of 264) sorted by relevance

1234567891011

/Linux-v5.15/fs/
Dattr.c33 static bool chown_ok(struct user_namespace *mnt_userns, in chown_ok() argument
37 kuid_t kuid = i_uid_into_mnt(mnt_userns, inode); in chown_ok()
40 if (capable_wrt_inode_uidgid(mnt_userns, inode, CAP_CHOWN)) in chown_ok()
60 static bool chgrp_ok(struct user_namespace *mnt_userns, in chgrp_ok() argument
63 kgid_t kgid = i_gid_into_mnt(mnt_userns, inode); in chgrp_ok()
64 if (uid_eq(current_fsuid(), i_uid_into_mnt(mnt_userns, inode)) && in chgrp_ok()
67 if (capable_wrt_inode_uidgid(mnt_userns, inode, CAP_CHOWN)) in chgrp_ok()
96 int setattr_prepare(struct user_namespace *mnt_userns, struct dentry *dentry, in setattr_prepare() argument
117 if ((ia_valid & ATTR_UID) && !chown_ok(mnt_userns, inode, attr->ia_uid)) in setattr_prepare()
121 if ((ia_valid & ATTR_GID) && !chgrp_ok(mnt_userns, inode, attr->ia_gid)) in setattr_prepare()
[all …]
Dxattr.c86 xattr_permission(struct user_namespace *mnt_userns, struct inode *inode, in xattr_permission() argument
101 if (HAS_UNMAPPED_ID(mnt_userns, inode)) in xattr_permission()
132 !inode_owner_or_capable(mnt_userns, inode)) in xattr_permission()
136 return inode_permission(mnt_userns, inode, mask); in xattr_permission()
167 __vfs_setxattr(struct user_namespace *mnt_userns, struct dentry *dentry, in __vfs_setxattr() argument
180 return handler->set(handler, mnt_userns, dentry, inode, name, value, in __vfs_setxattr()
202 int __vfs_setxattr_noperm(struct user_namespace *mnt_userns, in __vfs_setxattr_noperm() argument
214 error = __vfs_setxattr(mnt_userns, dentry, inode, name, value, in __vfs_setxattr_noperm()
255 __vfs_setxattr_locked(struct user_namespace *mnt_userns, struct dentry *dentry, in __vfs_setxattr_locked() argument
262 error = xattr_permission(mnt_userns, inode, name, MAY_WRITE); in __vfs_setxattr_locked()
[all …]
Dbad_inode.c30 static int bad_inode_create(struct user_namespace *mnt_userns, in bad_inode_create() argument
54 static int bad_inode_symlink(struct user_namespace *mnt_userns, in bad_inode_symlink() argument
61 static int bad_inode_mkdir(struct user_namespace *mnt_userns, struct inode *dir, in bad_inode_mkdir() argument
72 static int bad_inode_mknod(struct user_namespace *mnt_userns, struct inode *dir, in bad_inode_mknod() argument
78 static int bad_inode_rename2(struct user_namespace *mnt_userns, in bad_inode_rename2() argument
92 static int bad_inode_permission(struct user_namespace *mnt_userns, in bad_inode_permission() argument
98 static int bad_inode_getattr(struct user_namespace *mnt_userns, in bad_inode_getattr() argument
105 static int bad_inode_setattr(struct user_namespace *mnt_userns, in bad_inode_setattr() argument
149 static int bad_inode_tmpfile(struct user_namespace *mnt_userns, in bad_inode_tmpfile() argument
156 static int bad_inode_set_acl(struct user_namespace *mnt_userns, in bad_inode_set_acl() argument
Dposix_acl.c359 posix_acl_permission(struct user_namespace *mnt_userns, struct inode *inode, in posix_acl_permission() argument
373 uid = i_uid_into_mnt(mnt_userns, inode); in posix_acl_permission()
378 uid = kuid_into_mnt(mnt_userns, pa->e_uid); in posix_acl_permission()
383 gid = i_gid_into_mnt(mnt_userns, inode); in posix_acl_permission()
391 gid = kgid_into_mnt(mnt_userns, pa->e_gid); in posix_acl_permission()
586 posix_acl_chmod(struct user_namespace *mnt_userns, struct inode *inode, in posix_acl_chmod() argument
607 ret = inode->i_op->set_acl(mnt_userns, inode, acl, ACL_TYPE_ACCESS); in posix_acl_chmod()
686 int posix_acl_update_mode(struct user_namespace *mnt_userns, in posix_acl_update_mode() argument
698 if (!in_group_p(i_gid_into_mnt(mnt_userns, inode)) && in posix_acl_update_mode()
699 !capable_wrt_inode_uidgid(mnt_userns, inode, CAP_FSETID)) in posix_acl_update_mode()
[all …]
Dnamei.c289 static int check_acl(struct user_namespace *mnt_userns, in check_acl() argument
302 return posix_acl_permission(mnt_userns, inode, acl, mask); in check_acl()
309 int error = posix_acl_permission(mnt_userns, inode, acl, mask); in check_acl()
334 static int acl_permission_check(struct user_namespace *mnt_userns, in acl_permission_check() argument
341 i_uid = i_uid_into_mnt(mnt_userns, inode); in acl_permission_check()
350 int error = check_acl(mnt_userns, inode, mask); in acl_permission_check()
364 kgid_t kgid = i_gid_into_mnt(mnt_userns, inode); in acl_permission_check()
395 int generic_permission(struct user_namespace *mnt_userns, struct inode *inode, in generic_permission() argument
403 ret = acl_permission_check(mnt_userns, inode, mask); in generic_permission()
410 if (capable_wrt_inode_uidgid(mnt_userns, inode, in generic_permission()
[all …]
/Linux-v5.15/fs/xfs/
Dxfs_iops.c163 struct user_namespace *mnt_userns, in xfs_generic_create() argument
197 error = xfs_create(mnt_userns, XFS_I(dir), &name, mode, rdev, in xfs_generic_create()
201 error = xfs_create_tmpfile(mnt_userns, XFS_I(dir), mode, &ip); in xfs_generic_create()
258 struct user_namespace *mnt_userns, in xfs_vn_mknod() argument
264 return xfs_generic_create(mnt_userns, dir, dentry, mode, rdev, false); in xfs_vn_mknod()
269 struct user_namespace *mnt_userns, in xfs_vn_create() argument
275 return xfs_generic_create(mnt_userns, dir, dentry, mode, 0, false); in xfs_vn_create()
280 struct user_namespace *mnt_userns, in xfs_vn_mkdir() argument
285 return xfs_generic_create(mnt_userns, dir, dentry, mode | S_IFDIR, 0, in xfs_vn_mkdir()
403 struct user_namespace *mnt_userns, in xfs_vn_symlink() argument
[all …]
Dxfs_itable.c58 struct user_namespace *mnt_userns, in xfs_bulkstat_one_int() argument
89 buf->bs_uid = from_kuid(sb_userns, i_uid_into_mnt(mnt_userns, inode)); in xfs_bulkstat_one_int()
90 buf->bs_gid = from_kgid(sb_userns, i_gid_into_mnt(mnt_userns, inode)); in xfs_bulkstat_one_int()
170 if (breq->mnt_userns != &init_user_ns) { in xfs_bulkstat_one()
191 error = xfs_bulkstat_one_int(breq->mp, breq->mnt_userns, tp, in xfs_bulkstat_one()
217 error = xfs_bulkstat_one_int(mp, bc->breq->mnt_userns, tp, ino, data); in xfs_bulkstat_iwalk()
261 if (breq->mnt_userns != &init_user_ns) { in xfs_bulkstat()
/Linux-v5.15/include/linux/
Dposix_acl_xattr.h36 void posix_acl_fix_xattr_from_user(struct user_namespace *mnt_userns,
38 void posix_acl_fix_xattr_to_user(struct user_namespace *mnt_userns,
41 static inline void posix_acl_fix_xattr_from_user(struct user_namespace *mnt_userns, in posix_acl_fix_xattr_from_user() argument
45 static inline void posix_acl_fix_xattr_to_user(struct user_namespace *mnt_userns, in posix_acl_fix_xattr_to_user() argument
Dima.h21 extern void ima_post_create_tmpfile(struct user_namespace *mnt_userns,
33 extern void ima_post_path_mknod(struct user_namespace *mnt_userns,
84 static inline void ima_post_create_tmpfile(struct user_namespace *mnt_userns, in ima_post_create_tmpfile() argument
129 static inline void ima_post_path_mknod(struct user_namespace *mnt_userns, in ima_post_path_mknod() argument
181 extern void ima_inode_post_setattr(struct user_namespace *mnt_userns,
192 static inline void ima_inode_post_setattr(struct user_namespace *mnt_userns, in ima_inode_post_setattr() argument
Devm.h26 extern int evm_inode_setxattr(struct user_namespace *mnt_userns,
33 extern int evm_inode_removexattr(struct user_namespace *mnt_userns,
81 static inline int evm_inode_setxattr(struct user_namespace *mnt_userns, in evm_inode_setxattr() argument
96 static inline int evm_inode_removexattr(struct user_namespace *mnt_userns, in evm_inode_removexattr() argument
Dfs.h1637 static inline kuid_t kuid_into_mnt(struct user_namespace *mnt_userns, in kuid_into_mnt() argument
1640 return make_kuid(mnt_userns, __kuid_val(kuid)); in kuid_into_mnt()
1651 static inline kgid_t kgid_into_mnt(struct user_namespace *mnt_userns, in kgid_into_mnt() argument
1654 return make_kgid(mnt_userns, __kgid_val(kgid)); in kgid_into_mnt()
1665 static inline kuid_t i_uid_into_mnt(struct user_namespace *mnt_userns, in i_uid_into_mnt() argument
1668 return kuid_into_mnt(mnt_userns, inode->i_uid); in i_uid_into_mnt()
1679 static inline kgid_t i_gid_into_mnt(struct user_namespace *mnt_userns, in i_gid_into_mnt() argument
1682 return kgid_into_mnt(mnt_userns, inode->i_gid); in i_gid_into_mnt()
1693 static inline kuid_t kuid_from_mnt(struct user_namespace *mnt_userns, in kuid_from_mnt() argument
1696 return KUIDT_INIT(from_kuid(mnt_userns, kuid)); in kuid_from_mnt()
[all …]
/Linux-v5.15/fs/ntfs3/
Dnamei.c95 static int ntfs_create(struct user_namespace *mnt_userns, struct inode *dir, in ntfs_create() argument
100 inode = ntfs_create_inode(mnt_userns, dir, dentry, NULL, S_IFREG | mode, in ntfs_create()
111 static int ntfs_mknod(struct user_namespace *mnt_userns, struct inode *dir, in ntfs_mknod() argument
116 inode = ntfs_create_inode(mnt_userns, dir, dentry, NULL, mode, rdev, in ntfs_mknod()
184 static int ntfs_symlink(struct user_namespace *mnt_userns, struct inode *dir, in ntfs_symlink() argument
190 inode = ntfs_create_inode(mnt_userns, dir, dentry, NULL, S_IFLNK | 0777, in ntfs_symlink()
199 static int ntfs_mkdir(struct user_namespace *mnt_userns, struct inode *dir, in ntfs_mkdir() argument
204 inode = ntfs_create_inode(mnt_userns, dir, dentry, NULL, S_IFDIR | mode, in ntfs_mkdir()
230 static int ntfs_rename(struct user_namespace *mnt_userns, struct inode *dir, in ntfs_rename() argument
Dxattr.c479 static struct posix_acl *ntfs_get_acl_ex(struct user_namespace *mnt_userns, in ntfs_get_acl_ex() argument
515 acl = posix_acl_from_xattr(mnt_userns, buf, err); in ntfs_get_acl_ex()
542 static noinline int ntfs_set_acl_ex(struct user_namespace *mnt_userns, in ntfs_set_acl_ex() argument
560 err = posix_acl_update_mode(mnt_userns, inode, &mode, in ntfs_set_acl_ex()
595 err = posix_acl_to_xattr(mnt_userns, acl, value, size); in ntfs_set_acl_ex()
616 int ntfs_set_acl(struct user_namespace *mnt_userns, struct inode *inode, in ntfs_set_acl() argument
619 return ntfs_set_acl_ex(mnt_userns, inode, acl, type); in ntfs_set_acl()
627 int ntfs_init_acl(struct user_namespace *mnt_userns, struct inode *inode, in ntfs_init_acl() argument
638 err = ntfs_set_acl_ex(mnt_userns, inode, default_acl, in ntfs_init_acl()
649 err = ntfs_set_acl_ex(mnt_userns, inode, acl, in ntfs_init_acl()
[all …]
/Linux-v5.15/fs/minix/
Dnamei.c36 static int minix_mknod(struct user_namespace *mnt_userns, struct inode *dir, in minix_mknod() argument
55 static int minix_tmpfile(struct user_namespace *mnt_userns, struct inode *dir, in minix_tmpfile() argument
68 static int minix_create(struct user_namespace *mnt_userns, struct inode *dir, in minix_create() argument
71 return minix_mknod(mnt_userns, dir, dentry, mode, 0); in minix_create()
74 static int minix_symlink(struct user_namespace *mnt_userns, struct inode *dir, in minix_symlink() argument
114 static int minix_mkdir(struct user_namespace *mnt_userns, struct inode *dir, in minix_mkdir() argument
187 static int minix_rename(struct user_namespace *mnt_userns, in minix_rename() argument
/Linux-v5.15/fs/btrfs/
Dacl.c59 struct user_namespace *mnt_userns, in __btrfs_set_acl() argument
114 int btrfs_set_acl(struct user_namespace *mnt_userns, struct inode *inode, in btrfs_set_acl() argument
121 ret = posix_acl_update_mode(mnt_userns, inode, in btrfs_set_acl()
126 ret = __btrfs_set_acl(NULL, mnt_userns, inode, acl, type); in btrfs_set_acl()
/Linux-v5.15/security/integrity/evm/
Devm_main.c455 static int evm_xattr_acl_change(struct user_namespace *mnt_userns, in evm_xattr_acl_change() argument
479 rc = posix_acl_update_mode(mnt_userns, inode, &mode, &acl_res); in evm_xattr_acl_change()
504 static int evm_xattr_change(struct user_namespace *mnt_userns, in evm_xattr_change() argument
512 return evm_xattr_acl_change(mnt_userns, dentry, xattr_name, in evm_xattr_change()
541 static int evm_protect_xattr(struct user_namespace *mnt_userns, in evm_protect_xattr() argument
597 !evm_xattr_change(mnt_userns, dentry, xattr_name, xattr_value, in evm_protect_xattr()
624 int evm_inode_setxattr(struct user_namespace *mnt_userns, struct dentry *dentry, in evm_inode_setxattr() argument
643 return evm_protect_xattr(mnt_userns, dentry, xattr_name, xattr_value, in evm_inode_setxattr()
656 int evm_inode_removexattr(struct user_namespace *mnt_userns, in evm_inode_removexattr() argument
665 return evm_protect_xattr(mnt_userns, dentry, xattr_name, NULL, 0); in evm_inode_removexattr()
/Linux-v5.15/fs/ksmbd/
Dsmbacl.h213 static inline uid_t posix_acl_uid_translate(struct user_namespace *mnt_userns, in posix_acl_uid_translate() argument
219 kuid = kuid_into_mnt(mnt_userns, pace->e_uid); in posix_acl_uid_translate()
225 static inline gid_t posix_acl_gid_translate(struct user_namespace *mnt_userns, in posix_acl_gid_translate() argument
231 kgid = kgid_into_mnt(mnt_userns, pace->e_gid); in posix_acl_gid_translate()
/Linux-v5.15/security/
Dcommoncap.c320 int cap_inode_killpriv(struct user_namespace *mnt_userns, struct dentry *dentry) in cap_inode_killpriv() argument
324 error = __vfs_removexattr(mnt_userns, dentry, XATTR_NAME_CAPS); in cap_inode_killpriv()
377 int cap_inode_getsecurity(struct user_namespace *mnt_userns, in cap_inode_getsecurity() argument
399 ret = (int)vfs_getxattr_alloc(mnt_userns, dentry, XATTR_NAME_CAPS, in cap_inode_getsecurity()
421 kroot = kuid_into_mnt(mnt_userns, kroot); in cap_inode_getsecurity()
500 struct user_namespace *mnt_userns) in rootid_from_xattr() argument
510 return kuid_from_mnt(mnt_userns, rootkid); in rootid_from_xattr()
537 int cap_convert_nscap(struct user_namespace *mnt_userns, struct dentry *dentry, in cap_convert_nscap() argument
554 if (!capable_wrt_inode_uidgid(mnt_userns, inode, CAP_SETFCAP)) in cap_convert_nscap()
556 if (size == XATTR_CAPS_SZ_2 && (mnt_userns == &init_user_ns)) in cap_convert_nscap()
[all …]
/Linux-v5.15/fs/ocfs2/
Dfile.h52 int ocfs2_setattr(struct user_namespace *mnt_userns, struct dentry *dentry,
54 int ocfs2_getattr(struct user_namespace *mnt_userns, const struct path *path,
56 int ocfs2_permission(struct user_namespace *mnt_userns,
/Linux-v5.15/fs/kernfs/
Dkernfs-internal.h112 int kernfs_iop_permission(struct user_namespace *mnt_userns,
114 int kernfs_iop_setattr(struct user_namespace *mnt_userns, struct dentry *dentry,
116 int kernfs_iop_getattr(struct user_namespace *mnt_userns,
/Linux-v5.15/fs/sysv/
Dnamei.c44 static int sysv_mknod(struct user_namespace *mnt_userns, struct inode *dir, in sysv_mknod() argument
64 static int sysv_create(struct user_namespace *mnt_userns, struct inode *dir, in sysv_create() argument
70 static int sysv_symlink(struct user_namespace *mnt_userns, struct inode *dir, in sysv_symlink() argument
113 static int sysv_mkdir(struct user_namespace *mnt_userns, struct inode *dir, in sysv_mkdir() argument
192 static int sysv_rename(struct user_namespace *mnt_userns, struct inode *old_dir, in sysv_rename() argument
/Linux-v5.15/fs/ramfs/
Dinode.c97 ramfs_mknod(struct user_namespace *mnt_userns, struct inode *dir, in ramfs_mknod() argument
112 static int ramfs_mkdir(struct user_namespace *mnt_userns, struct inode *dir, in ramfs_mkdir() argument
121 static int ramfs_create(struct user_namespace *mnt_userns, struct inode *dir, in ramfs_create() argument
127 static int ramfs_symlink(struct user_namespace *mnt_userns, struct inode *dir, in ramfs_symlink() argument
147 static int ramfs_tmpfile(struct user_namespace *mnt_userns, in ramfs_tmpfile() argument
/Linux-v5.15/fs/fat/
Dfile.c397 int fat_getattr(struct user_namespace *mnt_userns, const struct path *path, in fat_getattr() argument
401 generic_fillattr(mnt_userns, inode, stat); in fat_getattr()
450 static int fat_allow_set_time(struct user_namespace *mnt_userns, in fat_allow_set_time() argument
455 if (!uid_eq(current_fsuid(), i_uid_into_mnt(mnt_userns, inode))) { in fat_allow_set_time()
456 if (in_group_p(i_gid_into_mnt(mnt_userns, inode))) in fat_allow_set_time()
470 int fat_setattr(struct user_namespace *mnt_userns, struct dentry *dentry, in fat_setattr() argument
481 if (fat_allow_set_time(mnt_userns, sbi, inode)) in fat_setattr()
485 error = setattr_prepare(mnt_userns, dentry, attr); in fat_setattr()
555 setattr_copy(mnt_userns, inode, attr); in fat_setattr()
/Linux-v5.15/kernel/
Dcapability.c488 struct user_namespace *mnt_userns, in privileged_wrt_inode_uidgid() argument
491 return kuid_has_mapping(ns, i_uid_into_mnt(mnt_userns, inode)) && in privileged_wrt_inode_uidgid()
492 kgid_has_mapping(ns, i_gid_into_mnt(mnt_userns, inode)); in privileged_wrt_inode_uidgid()
504 bool capable_wrt_inode_uidgid(struct user_namespace *mnt_userns, in capable_wrt_inode_uidgid() argument
510 privileged_wrt_inode_uidgid(ns, mnt_userns, inode); in capable_wrt_inode_uidgid()
/Linux-v5.15/fs/ufs/
Dnamei.c72 static int ufs_create (struct user_namespace * mnt_userns, in ufs_create() argument
89 static int ufs_mknod(struct user_namespace *mnt_userns, struct inode *dir, in ufs_mknod() argument
109 static int ufs_symlink (struct user_namespace * mnt_userns, struct inode * dir, in ufs_symlink() argument
169 static int ufs_mkdir(struct user_namespace * mnt_userns, struct inode * dir, in ufs_mkdir() argument
246 static int ufs_rename(struct user_namespace *mnt_userns, struct inode *old_dir, in ufs_rename() argument

1234567891011