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/inode_file.cpp | |
| parent | 59504cfd677dd3e9d9ddb0deea4df7614efedb84 (diff) | |
| download | teachos-3ace886a9e9f044cd48de51f0a15aceb02bfa9b2.tar.xz teachos-3ace886a9e9f044cd48de51f0a15aceb02bfa9b2.zip | |
Clean up project folder structure
Diffstat (limited to 'kernel/src/filesystem/inode_file.cpp')
| -rw-r--r-- | kernel/src/filesystem/inode_file.cpp | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/kernel/src/filesystem/inode_file.cpp b/kernel/src/filesystem/inode_file.cpp new file mode 100644 index 0000000..7abac7b --- /dev/null +++ b/kernel/src/filesystem/inode_file.cpp @@ -0,0 +1,35 @@ +#include "kernel/filesystem/inode_file.hpp" + +#include "kapi/system.hpp" + +#include "kernel/filesystem/inode.hpp" + +#include <kstd/memory> + +#include <cstddef> + +namespace filesystem +{ + inode_file::inode_file(kstd::shared_ptr<inode> const & inode) + : m_inode(inode) + { + if (!m_inode) + { + kapi::system::panic("[FILESYSTEM] inode_file constructed with null inode"); + } + } + + auto inode_file::open() -> void + { + // Hook point for permission checks or lazy metadata loading. + } + + auto inode_file::read(void * buffer, size_t offset, size_t size) const -> size_t + { + return m_inode->read(buffer, offset, size); + } + auto inode_file::write(void const * buffer, size_t offset, size_t size) -> size_t + { + return m_inode->write(buffer, offset, size); + } +} // namespace filesystem
\ No newline at end of file |
