Kernel: Let inodes provide pre-open file descriptions

Some magical inodes, such as /proc/pid/fd/fileno, are going to want to open() to
a custom FileDescription, so add a hook for that.
This commit is contained in:
Sergey Bugaev 2020-01-15 14:03:14 +03:00 committed by Andreas Kling
parent ae64fd1b27
commit 8642a7046c
Notes: sideshowbarker 2024-07-19 10:01:13 +09:00
3 changed files with 13 additions and 2 deletions

View file

@ -230,6 +230,9 @@ KResultOr<NonnullRefPtr<FileDescription>> VFS::open(StringView path, int options
return KResult(-EACCES);
}
if (auto preopen_fd = inode.preopen_fd())
return *preopen_fd;
if (metadata.is_device()) {
if (custody.mount_flags() & MS_NODEV)
return KResult(-EACCES);