diff options
| author | marcel.braun <marcel.braun@ost.ch> | 2026-03-17 19:36:20 +0100 |
|---|---|---|
| committer | marcel.braun <marcel.braun@ost.ch> | 2026-03-17 19:36:20 +0100 |
| commit | 3ace886a9e9f044cd48de51f0a15aceb02bfa9b2 (patch) | |
| tree | 1dc00e8802ab8fb60809b1f55ae7baadf9e430e1 /kernel/src/filesystem/ext2/ext2_filesystem.cpp | |
| parent | 59504cfd677dd3e9d9ddb0deea4df7614efedb84 (diff) | |
| download | teachos-3ace886a9e9f044cd48de51f0a15aceb02bfa9b2.tar.xz teachos-3ace886a9e9f044cd48de51f0a15aceb02bfa9b2.zip | |
Clean up project folder structure
Diffstat (limited to 'kernel/src/filesystem/ext2/ext2_filesystem.cpp')
| -rw-r--r-- | kernel/src/filesystem/ext2/ext2_filesystem.cpp | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/kernel/src/filesystem/ext2/ext2_filesystem.cpp b/kernel/src/filesystem/ext2/ext2_filesystem.cpp new file mode 100644 index 0000000..408b292 --- /dev/null +++ b/kernel/src/filesystem/ext2/ext2_filesystem.cpp @@ -0,0 +1,33 @@ +#include "kernel/filesystem/ext2/ext2_filesystem.hpp" + +#include "kernel/devices/device.hpp" +#include "kernel/filesystem/inode.hpp" +#include "kernel/filesystem/inode_metadata.hpp" + +#include <kstd/memory> + +#include <string_view> + +namespace filesystem::ext2 +{ + auto ext2_filesystem::mount(kstd::shared_ptr<devices::device> const & device) -> int + { + if (!device) + { + return -1; // TODO BA-FS26 panic or errorcode? + } + + m_device = device; + // TODO BA-FS26 load proper root inode from ext2 metadata + m_root_inode = inode{inode_kind::directory}; + + // TODO BA-FS26 implement + return 0; + } + + auto ext2_filesystem::lookup(inode const & /*parent*/, std::string_view /*name*/) -> inode * + { + // TODO BA-FS26 implement ext2 directory traversal and inode loading + return nullptr; + } +} // namespace filesystem::ext2 |
