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
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);