diff options
author | Anton Kling <anton@kling.gg> | 2024-04-17 17:06:16 +0200 |
---|---|---|
committer | Anton Kling <anton@kling.gg> | 2024-04-17 17:06:16 +0200 |
commit | 620d37f41747e943648544d1fd1567d386c91e04 (patch) | |
tree | bd6d616aca8a853f3b90cfd176bba4d37575e42a /kernel/syscalls/fstat.c | |
parent | d0cca44913356f8ce15e15216b0e26c2e74b4d06 (diff) |
Kernel/LibC: Add fstat() and remove stat() syscall
Diffstat (limited to 'kernel/syscalls/fstat.c')
-rw-r--r-- | kernel/syscalls/fstat.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/kernel/syscalls/fstat.c b/kernel/syscalls/fstat.c new file mode 100644 index 0000000..38346e3 --- /dev/null +++ b/kernel/syscalls/fstat.c @@ -0,0 +1,11 @@ +#include <errno.h> +#include <fs/vfs.h> +#include <syscalls.h> + +int syscall_fstat(int fd, struct stat *buf) { + if (!mmu_is_valid_userpointer(buf, sizeof(struct stat))) { + return -EPERM; // TODO: Is this correct? The spec says nothing about + // this case. + } + return vfs_fstat(fd, buf); +} |