aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--kernel/kernel/filesystem/rootfs/inode.cpp9
-rw-r--r--kernel/kernel/filesystem/rootfs/inode.hpp7
2 files changed, 16 insertions, 0 deletions
diff --git a/kernel/kernel/filesystem/rootfs/inode.cpp b/kernel/kernel/filesystem/rootfs/inode.cpp
index 0ee0b517..f2751afc 100644
--- a/kernel/kernel/filesystem/rootfs/inode.cpp
+++ b/kernel/kernel/filesystem/rootfs/inode.cpp
@@ -1,5 +1,7 @@
#include <kernel/filesystem/inode.hpp>
+#include <kernel/filesystem/directory_listing_cursor.hpp>
+#include <kernel/filesystem/directory_listing_entry.hpp>
#include <kernel/filesystem/rootfs/inode.hpp>
#include <kstd/result.hpp>
@@ -7,6 +9,7 @@
#include <cstddef>
#include <span>
+#include <utility>
namespace kernel::filesystem::rootfs
{
@@ -24,4 +27,10 @@ namespace kernel::filesystem::rootfs
{
return true;
}
+
+ auto inode::read_directory(directory_listing_cursor position, std::span<directory_listing_entry>) const
+ -> kstd::result<std::pair<std::size_t, directory_listing_cursor>>
+ {
+ return std::pair{0, position};
+ }
} // namespace kernel::filesystem::rootfs
diff --git a/kernel/kernel/filesystem/rootfs/inode.hpp b/kernel/kernel/filesystem/rootfs/inode.hpp
index 2a1c3858..fdef0df4 100644
--- a/kernel/kernel/filesystem/rootfs/inode.hpp
+++ b/kernel/kernel/filesystem/rootfs/inode.hpp
@@ -1,6 +1,8 @@
#ifndef TEACHOS_KERNEL_FILESYSTEM_ROOTFS_INODE_HPP
#define TEACHOS_KERNEL_FILESYSTEM_ROOTFS_INODE_HPP
+#include <kernel/filesystem/directory_listing_cursor.hpp>
+#include <kernel/filesystem/directory_listing_entry.hpp>
#include <kernel/filesystem/inode.hpp>
#include <kstd/memory.hpp>
@@ -11,6 +13,7 @@
#include <cstddef>
#include <span>
+#include <utility>
namespace kernel::filesystem::rootfs
{
@@ -23,6 +26,10 @@ namespace kernel::filesystem::rootfs
auto write(std::span<std::byte const> buffer, kstd::bytes offset) -> kstd::result<kstd::bytes> override;
[[nodiscard]] auto is_directory() const -> bool override;
+
+ [[nodiscard]] auto read_directory(directory_listing_cursor position,
+ std::span<directory_listing_entry> entries) const
+ -> kstd::result<std::pair<std::size_t, directory_listing_cursor>> override;
};
} // namespace kernel::filesystem::rootfs