aboutsummaryrefslogtreecommitdiff
path: root/kernel/include
diff options
context:
space:
mode:
authorLukas Oesch <lukasoesch20@gmail.com>2026-04-02 09:50:14 +0200
committerLukas Oesch <lukasoesch20@gmail.com>2026-04-11 07:58:20 +0200
commit93bca4c2a7c1852fc89df6965c835a7dbbdd6512 (patch)
tree9330b8397b2c76da6c0e4f9115e5f4e5264f043b /kernel/include
parent72b40ecf33fb0ef2d4232b80560642296c79399c (diff)
downloadteachos-93bca4c2a7c1852fc89df6965c835a7dbbdd6512.tar.xz
teachos-93bca4c2a7c1852fc89df6965c835a7dbbdd6512.zip
read ext2 superblock and check the magic number
Diffstat (limited to 'kernel/include')
-rw-r--r--kernel/include/kernel/filesystem/ext2/filesystem.hpp11
1 files changed, 10 insertions, 1 deletions
diff --git a/kernel/include/kernel/filesystem/ext2/filesystem.hpp b/kernel/include/kernel/filesystem/ext2/filesystem.hpp
index 078da31..176d83c 100644
--- a/kernel/include/kernel/filesystem/ext2/filesystem.hpp
+++ b/kernel/include/kernel/filesystem/ext2/filesystem.hpp
@@ -2,20 +2,29 @@
#define TEACH_OS_KERNEL_FILESYSTEM_EXT2_FILESYSTEM_HPP
#include "kapi/devices/device.hpp"
+
+#include "kernel/filesystem/ext2/superblock.hpp"
#include "kernel/filesystem/filesystem.hpp"
#include "kernel/filesystem/inode.hpp"
#include <kstd/memory>
+#include <cstddef>
#include <string_view>
namespace kernel::filesystem::ext2
{
struct filesystem : kernel::filesystem::filesystem
{
- auto mount(kstd::shared_ptr<kapi::devices::device> const & device) -> int override;
+ auto mount(kstd::shared_ptr<kapi::devices::device> const & device) -> int;
auto lookup(kstd::shared_ptr<kernel::filesystem::inode> const & parent, std::string_view name)
-> kstd::shared_ptr<kernel::filesystem::inode> override;
+
+ private:
+ auto get_block_size() -> size_t;
+ auto get_inode_size() -> size_t;
+
+ superblock m_superblock;
};
} // namespace kernel::filesystem::ext2