diff options
| author | Felix Morgner <felix.morgner@ost.ch> | 2026-07-13 22:31:52 +0200 |
|---|---|---|
| committer | Felix Morgner <felix.morgner@ost.ch> | 2026-07-13 22:31:52 +0200 |
| commit | 12dbc8892027feceec2576c2e5dd03b30a1da2da (patch) | |
| tree | ff330ff2d581b758cee91b9bedd3b67dc373894e | |
| parent | ea6793ca34a77b1b5ed3a590c8aa235ac0d42ee7 (diff) | |
| download | kernel-12dbc8892027feceec2576c2e5dd03b30a1da2da.tar.xz kernel-12dbc8892027feceec2576c2e5dd03b30a1da2da.zip | |
kernel/vfs: add early check
| -rw-r--r-- | kernel/kernel/filesystem/vfs.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/kernel/kernel/filesystem/vfs.cpp b/kernel/kernel/filesystem/vfs.cpp index aa462eae..e0e79094 100644 --- a/kernel/kernel/filesystem/vfs.cpp +++ b/kernel/kernel/filesystem/vfs.cpp @@ -215,6 +215,11 @@ namespace kernel::filesystem auto part = path_parts_vector.back(); path_parts_vector.pop_back(); + if (!current_dentry->get_inode()->is_directory()) + { + return std::unexpected{vfs_errc::not_a_directory}; + } + if (part == ".") { continue; |
