1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 11:38:11 +00:00

Kernel: Return -ENOTBLK for non-block device Ext2FS mount source

When mounting an Ext2FS, a block device source is required. All other
filesystem types are unaffected, as most of them ignore the source file
descriptor anyway.

Fixes #5153.
This commit is contained in:
Linus Groh 2021-01-28 23:54:29 +01:00 committed by Andreas Kling
parent b7b09470ca
commit dbbc378fb2
2 changed files with 4 additions and 0 deletions

View file

@ -91,6 +91,8 @@ int Process::sys$mount(Userspace<const Syscall::SC_mount_params*> user_params)
if (fs_type == "ext2" || fs_type == "Ext2FS") {
if (description.is_null())
return -EBADF;
if (!description->file().is_block_device())
return -ENOTBLK;
if (!description->file().is_seekable()) {
dbgln("mount: this is not a seekable file");
return -ENODEV;