| /kernel/linux/linux-6.6/tools/testing/selftests/fchmodat2/ |
| D | fchmodat2_test.c | 12 int sys_fchmodat2(int dfd, const char *filename, mode_t mode, int flags) in sys_fchmodat2() argument 14 int ret = syscall(__NR_fchmodat2, dfd, filename, mode, flags); in sys_fchmodat2() 21 int dfd, ret; in setup_testdir() local 28 dfd = open(dirname, O_PATH | O_DIRECTORY); in setup_testdir() 29 if (dfd < 0) in setup_testdir() 32 ret = openat(dfd, "regfile", O_CREAT | O_WRONLY | O_TRUNC, 0644); in setup_testdir() 38 ret = symlinkat("regfile", dfd, "symlink"); in setup_testdir() 43 return dfd; in setup_testdir() 46 int expect_mode(int dfd, const char *filename, mode_t expect_mode) in expect_mode() argument 49 int ret = fstatat(dfd, filename, &st, AT_SYMLINK_NOFOLLOW); in expect_mode() [all …]
|
| /kernel/linux/linux-6.6/fs/ |
| D | utimes.c | 80 static int do_utimes_path(int dfd, const char __user *filename, in do_utimes_path() argument 95 error = user_path_at(dfd, filename, lookup_flags, &path); in do_utimes_path() 127 * @dfd: open file descriptor, -1 or AT_FDCWD 132 * If filename is NULL and dfd refers to an open file, then operate on 133 * the file. Otherwise look up filename, possibly using dfd as a 140 long do_utimes(int dfd, const char __user *filename, struct timespec64 *times, in do_utimes() argument 143 if (filename == NULL && dfd != AT_FDCWD) in do_utimes() 144 return do_utimes_fd(dfd, times, flags); in do_utimes() 145 return do_utimes_path(dfd, filename, times, flags); in do_utimes() 148 SYSCALL_DEFINE4(utimensat, int, dfd, const char __user *, filename, in SYSCALL_DEFINE4() argument [all …]
|
| D | stat.c | 219 * @dfd: A file descriptor representing the base dir for a relative filename 232 static int vfs_statx(int dfd, struct filename *filename, int flags, in vfs_statx() argument 244 error = filename_lookup(dfd, filename, lookup_flags, &path, NULL); in vfs_statx() 274 int vfs_fstatat(int dfd, const char __user *filename, in vfs_fstatat() argument 287 if (dfd >= 0 && flags == AT_EMPTY_PATH) { in vfs_fstatat() 295 return vfs_fstat(dfd, stat); in vfs_fstatat() 299 ret = vfs_statx(dfd, name, statx_flags, stat, STATX_BASIC_STATS); in vfs_fstatat() 457 SYSCALL_DEFINE4(newfstatat, int, dfd, const char __user *, filename, in SYSCALL_DEFINE4() argument 463 error = vfs_fstatat(dfd, filename, &stat, flag); in SYSCALL_DEFINE4() 482 static int do_readlinkat(int dfd, const char __user *pathname, in do_readlinkat() argument [all …]
|
| D | internal.h | 54 extern int filename_lookup(int dfd, struct filename *name, unsigned flags, 56 int do_rmdir(int dfd, struct filename *name); 57 int do_unlinkat(int dfd, struct filename *name); 61 int do_mkdirat(int dfd, struct filename *name, umode_t mode); 169 extern struct file *do_filp_open(int dfd, struct filename *pathname, 179 int do_fchownat(int dfd, const char __user *filename, uid_t user, gid_t group, 232 int do_statx(int dfd, struct filename *filename, unsigned int flags,
|
| D | open.c | 457 static long do_faccessat(int dfd, const char __user *filename, int mode, int flags) in do_faccessat() argument 483 res = user_path_at(dfd, filename, lookup_flags, &path); in do_faccessat() 529 SYSCALL_DEFINE3(faccessat, int, dfd, const char __user *, filename, int, mode) in SYSCALL_DEFINE3() argument 531 return do_faccessat(dfd, filename, mode, 0); in SYSCALL_DEFINE3() 534 SYSCALL_DEFINE4(faccessat2, int, dfd, const char __user *, filename, int, mode, in SYSCALL_DEFINE4() argument 537 return do_faccessat(dfd, filename, mode, flags); in SYSCALL_DEFINE4() 674 static int do_fchmodat(int dfd, const char __user *filename, umode_t mode, in do_fchmodat() argument 689 error = user_path_at(dfd, filename, lookup_flags, &path); in do_fchmodat() 701 SYSCALL_DEFINE4(fchmodat2, int, dfd, const char __user *, filename, in SYSCALL_DEFINE4() argument 704 return do_fchmodat(dfd, filename, mode, flags); in SYSCALL_DEFINE4() [all …]
|
| /kernel/linux/linux-5.10/fs/ |
| D | utimes.c | 78 static int do_utimes_path(int dfd, const char __user *filename, in do_utimes_path() argument 93 error = user_path_at(dfd, filename, lookup_flags, &path); in do_utimes_path() 125 * @dfd: open file descriptor, -1 or AT_FDCWD 130 * If filename is NULL and dfd refers to an open file, then operate on 131 * the file. Otherwise look up filename, possibly using dfd as a 138 long do_utimes(int dfd, const char __user *filename, struct timespec64 *times, in do_utimes() argument 141 if (filename == NULL && dfd != AT_FDCWD) in do_utimes() 142 return do_utimes_fd(dfd, times, flags); in do_utimes() 143 return do_utimes_path(dfd, filename, times, flags); in do_utimes() 146 SYSCALL_DEFINE4(utimensat, int, dfd, const char __user *, filename, in SYSCALL_DEFINE4() argument [all …]
|
| D | stat.c | 161 * @dfd: A file descriptor representing the base dir for a relative filename 174 static int vfs_statx(int dfd, const char __user *filename, int flags, in vfs_statx() argument 193 error = user_path_at(dfd, filename, lookup_flags, &path); in vfs_statx() 212 int vfs_fstatat(int dfd, const char __user *filename, in vfs_fstatat() argument 215 return vfs_statx(dfd, filename, flags | AT_NO_AUTOMOUNT, in vfs_fstatat() 377 SYSCALL_DEFINE4(newfstatat, int, dfd, const char __user *, filename, in SYSCALL_DEFINE4() argument 383 error = vfs_fstatat(dfd, filename, &stat, flag); in SYSCALL_DEFINE4() 402 static int do_readlinkat(int dfd, const char __user *pathname, in do_readlinkat() argument 414 error = user_path_at_empty(dfd, pathname, lookup_flags, &path, &empty); in do_readlinkat() 438 SYSCALL_DEFINE4(readlinkat, int, dfd, const char __user *, pathname, in SYSCALL_DEFINE4() argument [all …]
|
| D | internal.h | 73 extern int filename_lookup(int dfd, struct filename *name, unsigned flags, 77 long do_rmdir(int dfd, struct filename *name); 78 long do_unlinkat(int dfd, struct filename *name); 131 extern struct file *do_filp_open(int dfd, struct filename *pathname, 141 int do_fchownat(int dfd, const char __user *filename, uid_t user, gid_t group, 200 int do_statx(int dfd, const char __user *filename, unsigned flags,
|
| D | open.c | 397 static long do_faccessat(int dfd, const char __user *filename, int mode, int flags) in do_faccessat() argument 423 res = user_path_at(dfd, filename, lookup_flags, &path); in do_faccessat() 469 SYSCALL_DEFINE3(faccessat, int, dfd, const char __user *, filename, int, mode) in SYSCALL_DEFINE3() argument 471 return do_faccessat(dfd, filename, mode, 0); in SYSCALL_DEFINE3() 474 SYSCALL_DEFINE4(faccessat2, int, dfd, const char __user *, filename, int, mode, in SYSCALL_DEFINE4() argument 477 return do_faccessat(dfd, filename, mode, flags); in SYSCALL_DEFINE4() 613 static int do_fchmodat(int dfd, const char __user *filename, umode_t mode) in do_fchmodat() argument 619 error = user_path_at(dfd, filename, lookup_flags, &path); in do_fchmodat() 631 SYSCALL_DEFINE3(fchmodat, int, dfd, const char __user *, filename, in SYSCALL_DEFINE3() argument 634 return do_fchmodat(dfd, filename, mode); in SYSCALL_DEFINE3() [all …]
|
| /kernel/linux/linux-6.6/tools/testing/selftests/openat2/ |
| D | helpers.c | 22 int raw_openat2(int dfd, const char *path, void *how, size_t size) in raw_openat2() argument 24 int ret = syscall(__NR_openat2, dfd, path, how, size); in raw_openat2() 28 int sys_openat2(int dfd, const char *path, struct open_how *how) in sys_openat2() argument 30 return raw_openat2(dfd, path, how, sizeof(*how)); in sys_openat2() 33 int sys_openat(int dfd, const char *path, struct open_how *how) in sys_openat() argument 35 int ret = openat(dfd, path, how->flags, how->mode); in sys_openat() 47 int touchat(int dfd, const char *path) in touchat() argument 49 int fd = openat(dfd, path, O_CREAT, 0700); in touchat() 71 bool fdequal(int fd, int dfd, const char *path) in fdequal() argument 77 dfdpath = fdreadlink(dfd); in fdequal()
|
| D | resolve_test.c | 49 int dfd, tmpfd; in setup_testdir() local 59 dfd = open(dirname, O_PATH | O_DIRECTORY); in setup_testdir() 60 if (dfd < 0) in setup_testdir() 64 E_mkdirat(dfd, "root", 0755); in setup_testdir() 65 tmpfd = openat(dfd, "root", O_PATH | O_DIRECTORY); in setup_testdir() 68 close(dfd); in setup_testdir() 69 dfd = tmpfd; in setup_testdir() 71 E_symlinkat("/proc/self/exe", dfd, "procexe"); in setup_testdir() 72 E_symlinkat("/proc/self/root", dfd, "procroot"); in setup_testdir() 73 E_mkdirat(dfd, "root", 0755); in setup_testdir() [all …]
|
| D | rename_attack_test.c | 37 int dfd; in setup_testdir() local 43 dfd = open(dirname, O_PATH | O_DIRECTORY); in setup_testdir() 44 if (dfd < 0) in setup_testdir() 47 E_mkdirat(dfd, "a", 0755); in setup_testdir() 48 E_mkdirat(dfd, "b", 0755); in setup_testdir() 49 E_mkdirat(dfd, "a/c", 0755); in setup_testdir() 51 return dfd; in setup_testdir() 86 int dfd, afd; in test_rename_attack() local 101 dfd = setup_testdir(); in test_rename_attack() 102 afd = openat(dfd, "a", O_PATH); in test_rename_attack() [all …]
|
| D | helpers.h | 96 int raw_openat2(int dfd, const char *path, void *how, size_t size); 97 int sys_openat2(int dfd, const char *path, struct open_how *how); 98 int sys_openat(int dfd, const char *path, struct open_how *how); 102 int touchat(int dfd, const char *path); 104 bool fdequal(int fd, int dfd, const char *path);
|
| /kernel/linux/linux-5.10/tools/testing/selftests/openat2/ |
| D | helpers.c | 22 int raw_openat2(int dfd, const char *path, void *how, size_t size) in raw_openat2() argument 24 int ret = syscall(__NR_openat2, dfd, path, how, size); in raw_openat2() 28 int sys_openat2(int dfd, const char *path, struct open_how *how) in sys_openat2() argument 30 return raw_openat2(dfd, path, how, sizeof(*how)); in sys_openat2() 33 int sys_openat(int dfd, const char *path, struct open_how *how) in sys_openat() argument 35 int ret = openat(dfd, path, how->flags, how->mode); in sys_openat() 47 int touchat(int dfd, const char *path) in touchat() argument 49 int fd = openat(dfd, path, O_CREAT, 0700); in touchat() 71 bool fdequal(int fd, int dfd, const char *path) in fdequal() argument 77 dfdpath = fdreadlink(dfd); in fdequal()
|
| D | resolve_test.c | 49 int dfd, tmpfd; in setup_testdir() local 59 dfd = open(dirname, O_PATH | O_DIRECTORY); in setup_testdir() 60 if (dfd < 0) in setup_testdir() 64 E_mkdirat(dfd, "root", 0755); in setup_testdir() 65 tmpfd = openat(dfd, "root", O_PATH | O_DIRECTORY); in setup_testdir() 68 close(dfd); in setup_testdir() 69 dfd = tmpfd; in setup_testdir() 71 E_symlinkat("/proc/self/exe", dfd, "procexe"); in setup_testdir() 72 E_symlinkat("/proc/self/root", dfd, "procroot"); in setup_testdir() 73 E_mkdirat(dfd, "root", 0755); in setup_testdir() [all …]
|
| D | rename_attack_test.c | 37 int dfd; in setup_testdir() local 43 dfd = open(dirname, O_PATH | O_DIRECTORY); in setup_testdir() 44 if (dfd < 0) in setup_testdir() 47 E_mkdirat(dfd, "a", 0755); in setup_testdir() 48 E_mkdirat(dfd, "b", 0755); in setup_testdir() 49 E_mkdirat(dfd, "a/c", 0755); in setup_testdir() 51 return dfd; in setup_testdir() 86 int dfd, afd; in test_rename_attack() local 101 dfd = setup_testdir(); in test_rename_attack() 102 afd = openat(dfd, "a", O_PATH); in test_rename_attack() [all …]
|
| D | helpers.h | 96 int raw_openat2(int dfd, const char *path, void *how, size_t size); 97 int sys_openat2(int dfd, const char *path, struct open_how *how); 98 int sys_openat(int dfd, const char *path, struct open_how *how); 102 int touchat(int dfd, const char *path); 104 bool fdequal(int fd, int dfd, const char *path);
|
| /kernel/linux/linux-6.6/io_uring/ |
| D | fs.c | 29 int dfd; member 36 int dfd; member 114 un->dfd = READ_ONCE(sqe->fd); in io_unlinkat_prep() 138 ret = do_rmdir(un->dfd, un->filename); in io_unlinkat() 140 ret = do_unlinkat(un->dfd, un->filename); in io_unlinkat() 164 mkd->dfd = READ_ONCE(sqe->fd); in io_mkdirat_prep() 184 ret = do_mkdirat(mkd->dfd, mkd->filename, mkd->mode); in io_mkdirat()
|
| D | statx.c | 16 int dfd; member 33 sx->dfd = READ_ONCE(sqe->fd); in io_statx_prep() 62 ret = do_statx(sx->dfd, sx->filename, sx->flags, sx->mask, sx->buffer); in io_statx()
|
| /kernel/linux/linux-5.10/Documentation/trace/ |
| D | kprobetrace.rst | 161 p:myprobe do_sys_open dfd=%ax filename=%dx flags=%cx mode=+4($stack) 165 p:myprobe,do_sys_open,dfd=%ax,filename=%dx,flags=%cx,mode=+4($stack) 173 …echo 'p:myprobe do_sys_open dfd=%ax filename=%dx flags=%cx mode=+4($stack)' > /sys/kernel/debug/tr… 202 field:unsigned long dfd; offset:20; size:4; signed:0; 208 print fmt: "(%lx) dfd=%lx filename=%lx flags=%lx mode=%lx", REC->__probe_ip, 209 REC->dfd, REC->filename, REC->flags, REC->mode 247 …<...>-1447 [001] 1038282.286875: myprobe: (do_sys_open+0x0/0xd6) dfd=3 filename=7fffd1ec4440 flag… 249 …<...>-1447 [001] 1038282.286885: myprobe: (do_sys_open+0x0/0xd6) dfd=ffffff9c filename=40413c fla… 251 …<...>-1447 [001] 1038282.286969: myprobe: (do_sys_open+0x0/0xd6) dfd=ffffff9c filename=4041c6 fla…
|
| /kernel/linux/linux-6.6/Documentation/trace/ |
| D | kprobetrace.rst | 172 p:myprobe do_sys_open dfd=%ax filename=%dx flags=%cx mode=+4($stack) 176 p:myprobe,do_sys_open,dfd=%ax,filename=%dx,flags=%cx,mode=+4($stack) 184 …echo 'p:myprobe do_sys_open dfd=%ax filename=%dx flags=%cx mode=+4($stack)' > /sys/kernel/tracing/… 213 field:unsigned long dfd; offset:20; size:4; signed:0; 219 print fmt: "(%lx) dfd=%lx filename=%lx flags=%lx mode=%lx", REC->__probe_ip, 220 REC->dfd, REC->filename, REC->flags, REC->mode 258 …<...>-1447 [001] 1038282.286875: myprobe: (do_sys_open+0x0/0xd6) dfd=3 filename=7fffd1ec4440 flag… 260 …<...>-1447 [001] 1038282.286885: myprobe: (do_sys_open+0x0/0xd6) dfd=ffffff9c filename=40413c fla… 262 …<...>-1447 [001] 1038282.286969: myprobe: (do_sys_open+0x0/0xd6) dfd=ffffff9c filename=4041c6 fla…
|
| /kernel/linux/linux-6.6/include/linux/ |
| D | syscalls.h | 389 asmlinkage long sys_mknodat(int dfd, const char __user * filename, umode_t mode, 391 asmlinkage long sys_mkdirat(int dfd, const char __user * pathname, umode_t mode); 392 asmlinkage long sys_unlinkat(int dfd, const char __user * pathname, int flag); 419 asmlinkage long sys_faccessat(int dfd, const char __user *filename, int mode); 420 asmlinkage long sys_faccessat2(int dfd, const char __user *filename, int mode, 426 asmlinkage long sys_fchmodat(int dfd, const char __user *filename, 428 asmlinkage long sys_fchmodat2(int dfd, const char __user *filename, 430 asmlinkage long sys_fchownat(int dfd, const char __user *filename, uid_t user, 433 asmlinkage long sys_openat(int dfd, const char __user *filename, int flags, 435 asmlinkage long sys_openat2(int dfd, const char __user *filename, [all …]
|
| /kernel/linux/linux-6.6/arch/powerpc/platforms/cell/spufs/ |
| D | coredump.c | 24 static int spufs_ctx_note_size(struct spu_context *ctx, int dfd) in spufs_ctx_note_size() argument 34 sprintf(fullname, "SPU/%d/%s", dfd, name); in spufs_ctx_note_size() 116 struct coredump_params *cprm, int dfd) in spufs_arch_write_note() argument 123 sprintf(fullname, "SPU/%d/%s", dfd, spufs_coredump_read[i].name); in spufs_arch_write_note()
|
| /kernel/linux/linux-5.10/arch/powerpc/platforms/cell/spufs/ |
| D | coredump.c | 24 static int spufs_ctx_note_size(struct spu_context *ctx, int dfd) in spufs_ctx_note_size() argument 34 sprintf(fullname, "SPU/%d/%s", dfd, name); in spufs_ctx_note_size() 116 struct coredump_params *cprm, int dfd) in spufs_arch_write_note() argument 123 sprintf(fullname, "SPU/%d/%s", dfd, spufs_coredump_read[i].name); in spufs_arch_write_note()
|
| /kernel/linux/linux-5.10/include/linux/ |
| D | syscalls.h | 418 asmlinkage long sys_mknodat(int dfd, const char __user * filename, umode_t mode, 420 asmlinkage long sys_mkdirat(int dfd, const char __user * pathname, umode_t mode); 421 asmlinkage long sys_unlinkat(int dfd, const char __user * pathname, int flag); 454 asmlinkage long sys_faccessat(int dfd, const char __user *filename, int mode); 455 asmlinkage long sys_faccessat2(int dfd, const char __user *filename, int mode, 461 asmlinkage long sys_fchmodat(int dfd, const char __user * filename, 463 asmlinkage long sys_fchownat(int dfd, const char __user *filename, uid_t user, 466 asmlinkage long sys_openat(int dfd, const char __user *filename, int flags, 468 asmlinkage long sys_openat2(int dfd, const char __user *filename, 541 asmlinkage long sys_readlinkat(int dfd, const char __user *path, char __user *buf, [all …]
|