ladybird/Kernel/FileSystem
Liav A cbf78975f1 Kernel: Add the futimens syscall
We have a problem with the original utimensat syscall because when we
do call LibC futimens function, internally we provide an empty path,
and the Kernel get_syscall_path_argument method will detect this as an
invalid path.

This happens to spit an error for example in the touch utility, so if a
user is running "touch non_existing_file", it will create that file, but
the user will still see an error coming from LibC futimens function.

This new syscall gets an open file description and it provides the same
functionality as utimensat, on the specified open file description.
The new syscall will be used later by LibC to properly implement LibC
futimens function so the situation described with relation to the
"touch" utility could be fixed.
2023-04-10 10:21:28 +02:00
..
DevPtsFS Kernel: Stop using *LockRefPtr for FileSystem pointers 2023-04-04 10:33:42 +02:00
Ext2FS Kernel: Stop using *LockRefPtr for FileSystem pointers 2023-04-04 10:33:42 +02:00
FATFS Kernel: Stop using *LockRefPtr for FileSystem pointers 2023-04-04 10:33:42 +02:00
ISO9660FS Kernel: Stop using *LockRefPtr for FileSystem pointers 2023-04-04 10:33:42 +02:00
Plan9FS Kernel: Stop using *LockRefPtr for Thread 2023-04-04 10:33:42 +02:00
ProcFS Kernel: Stop using *LockRefPtr for Process pointers 2023-04-04 10:33:42 +02:00
RAMFS Kernel: Stop using *LockRefPtr for FileSystem pointers 2023-04-04 10:33:42 +02:00
SysFS Kernel: Remove redundant HID name from all associated files 2023-04-09 18:11:37 +02:00
AnonymousFile.cpp Kernel: Simplify the File memory-mapping API 2022-08-24 14:57:51 +02:00
AnonymousFile.h Kernel: Use RefPtr instead of LockRefPtr for File and subclasses 2023-03-10 13:15:44 +01:00
BlockBasedFileSystem.cpp Kernel: Initialize DiskCache's buffer before the dirty&clean lists 2023-04-02 12:43:17 -06:00
BlockBasedFileSystem.h Kernel: Remove declarations for non-existent methods 2023-01-27 20:33:18 +00:00
Custody.cpp Kernel: Turn lock ranks into template parameters 2023-01-02 18:15:27 -05:00
Custody.h Kernel: Mark a bunch of NonnullRefPtrs also const to ensure immutability 2023-04-08 13:44:21 +02:00
DeviceFileTypes.h Everywhere: Prefix 'TYPEDEF_DISTINCT_ORDERED_ID' with 'AK_' 2022-07-22 23:09:43 +01:00
FIFO.cpp Kernel: Use RefPtr instead of LockRefPtr for File and subclasses 2023-03-10 13:15:44 +01:00
FIFO.h Kernel: Use RefPtr instead of LockRefPtr for File and subclasses 2023-03-10 13:15:44 +01:00
File.cpp Kernel: Use non-locking {Nonnull,}RefPtr for OpenFileDescription 2023-03-07 00:30:12 +01:00
File.h Kernel: Use non-locking {Nonnull,}RefPtr for OpenFileDescription 2023-03-07 00:30:12 +01:00
FileBackedFileSystem.cpp Kernel: Introduce support for using FileSystem object in multiple mounts 2022-10-22 16:57:52 -04:00
FileBackedFileSystem.h Kernel: Mark a bunch of NonnullRefPtrs also const to ensure immutability 2023-04-08 13:44:21 +02:00
FileSystem.cpp Kernel/FileSystem: Discard safely filesystems when unmounted last time 2022-10-22 16:57:52 -04:00
FileSystem.h Kernel: Turn lock ranks into template parameters 2023-01-02 18:15:27 -05:00
Inode.cpp Kernel: Use RefPtr instead of LockRefPtr for File and subclasses 2023-03-10 13:15:44 +01:00
Inode.h Kernel: Use RefPtr instead of LockRefPtr for File and subclasses 2023-03-10 13:15:44 +01:00
InodeFile.cpp Kernel: Switch LockRefPtr<Inode> to RefPtr<Inode> 2023-03-09 21:54:59 +01:00
InodeFile.h Kernel: Mark a bunch of NonnullRefPtrs also const to ensure immutability 2023-04-08 13:44:21 +02:00
InodeIdentifier.h Kernel: Remove declarations for non-existent methods 2023-01-27 20:33:18 +00:00
InodeMetadata.cpp Kernel: Use real UID/GID when checking for file access 2022-12-11 19:55:37 -07:00
InodeMetadata.h Everywhere: Use ReadonlySpan<T> instead of Span<T const> 2023-02-08 19:15:45 +00:00
InodeWatcher.cpp Kernel: Use RefPtr instead of LockRefPtr for File and subclasses 2023-03-10 13:15:44 +01:00
InodeWatcher.h Kernel: Use RefPtr instead of LockRefPtr for File and subclasses 2023-03-10 13:15:44 +01:00
Mount.cpp Kernel: Simplify Mount internals 2023-04-04 10:33:42 +02:00
Mount.h Kernel: Simplify Mount internals 2023-04-04 10:33:42 +02:00
OpenFileDescription.cpp AK: Rename Stream::write_entire_buffer to Stream::write_until_depleted 2023-03-13 15:16:20 +00:00
OpenFileDescription.h Kernel: Mark a bunch of NonnullRefPtrs also const to ensure immutability 2023-04-08 13:44:21 +02:00
UnveilNode.h AK+Kernel: Specialize Trie for NNOP<KString> and use it in UnveilNode 2022-02-16 22:21:37 +01:00
VirtualFileSystem.cpp Kernel: Add the futimens syscall 2023-04-10 10:21:28 +02:00
VirtualFileSystem.h Kernel: Add the futimens syscall 2023-04-10 10:21:28 +02:00