aboutsummaryrefslogtreecommitdiff
path: root/src/kernel/include/nullfs.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/kernel/include/nullfs.h')
-rw-r--r--src/kernel/include/nullfs.h20
1 files changed, 6 insertions, 14 deletions
diff --git a/src/kernel/include/nullfs.h b/src/kernel/include/nullfs.h
index 43bad5e..ba6a9c8 100644
--- a/src/kernel/include/nullfs.h
+++ b/src/kernel/include/nullfs.h
@@ -2,26 +2,18 @@
#include <vfs.h>
-#define NULLFS_OPT_CREATE_EN 1
-#define NULLFS_OPT_DELETE_EN 2
+// The nullfs accepts several flags at its creation :
+// - c : allow creation of files as ram files
+// - d : allow deletion of arbitrary nodes
+// - m : allow move operation
typedef struct nullfs nullfs_t;
-typedef struct {
- void* (*open)(void* f, int mode, fs_handle_t *h);
- size_t (*read)(void* fd, size_t offset, size_t len, char* buf);
- size_t (*write)(void* fd, size_t offset, size_t len, const char* buf);
- bool (*stat)(void* f, stat_t *st);
- int (*ioctl)(void* f, int command, void* data);
- void (*close)(void* fd);
- void (*dispose)(void* f);
-} nullfs_node_ops_t;
-
void register_nullfs_driver();
nullfs_t* as_nullfs(fs_t *fs);
-bool nullfs_add(nullfs_t *f, const char* name, void* data, nullfs_node_ops_t* ops);
-bool nullfs_add_ram_file(nullfs_t *f, const char* name, void* data, size_t init_sz, bool copy, int ok_modes);
+bool nullfs_add_node(nullfs_t *f, const char* name, fs_node_ptr data, fs_node_ops_t *ops);
+bool nullfs_add_ram_file(nullfs_t *f, const char* name, char* data, size_t init_sz, bool copy, int ok_modes);
/* vim: set ts=4 sw=4 tw=0 noet :*/