Implement read_dir_entry () VFS op, CE add ls command

This commit is contained in:
2026-02-25 16:25:43 +01:00
parent 704db2dfa4
commit 29bbcea435
12 changed files with 189 additions and 23 deletions

View File

@@ -3,6 +3,7 @@
#include <desc.h>
#include <device/device.h>
#include <dir_entry.h>
#include <libk/hash.h>
#include <libk/list.h>
#include <libk/rbtree.h>
@@ -35,6 +36,9 @@ struct vfs_volume {
int (*read) (struct vfs_volume* volume, const char* path, uint8_t* buffer, size_t off,
size_t size);
int (*read_dir_entry) (struct vfs_volume* volume, const char* path, struct dir_entry* entry,
size_t entry_num);
} driver_ops;
struct device* back_device;
void* udata
@@ -53,10 +57,12 @@ int vfs_volume_open (struct proc* proc, const char* volume, struct reschedule_ct
int vfs_volume_close (struct proc* proc, const char* volume, struct reschedule_ctx* rctx);
int vfs_read (struct proc* proc, const char* volume, const char* path, uint8_t* buffer, size_t off,
size_t size, struct reschedule_ctx* rctx);
size_t size);
int vfs_describe (struct proc* proc, const char* volume, const char* path, struct desc* desc,
struct reschedule_ctx* rctx);
int vfs_describe (struct proc* proc, const char* volume, const char* path, struct desc* desc);
int vfs_read_dir_entry (struct proc* proc, const char* volume, const char* path,
struct dir_entry* entry, size_t entry_num);
void vfs_init (void);