Rev 3675 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 3675 | Rev 4377 | ||
---|---|---|---|
Line 40... | Line 40... | ||
40 | #include <stdint.h> |
40 | #include <stdint.h> |
41 | #include <ipc/ipc.h> |
41 | #include <ipc/ipc.h> |
42 | #include <async.h> |
42 | #include <async.h> |
43 | 43 | ||
44 | typedef struct { |
44 | typedef struct { |
- | 45 | void *data; /**< Data of the file system implementation. */ |
|
- | 46 | } fs_node_t; |
|
- | 47 | ||
- | 48 | typedef struct { |
|
45 | void * (* match)(void *, const char *); |
49 | fs_node_t * (* match)(fs_node_t *, const char *); |
46 | void * (* node_get)(dev_handle_t, fs_index_t); |
50 | fs_node_t * (* node_get)(dev_handle_t, fs_index_t); |
47 | void (* node_put)(void *); |
51 | void (* node_put)(fs_node_t *); |
48 | void * (* create)(dev_handle_t, int); |
52 | fs_node_t * (* create)(dev_handle_t, int); |
49 | int (* destroy)(void *); |
53 | int (* destroy)(fs_node_t *); |
50 | int (* link)(void *, void *, const char *); |
54 | int (* link)(fs_node_t *, fs_node_t *, const char *); |
51 | int (* unlink)(void *, void *); |
55 | int (* unlink)(fs_node_t *, fs_node_t *, const char *); |
52 | fs_index_t (* index_get)(void *); |
56 | fs_index_t (* index_get)(fs_node_t *); |
53 | size_t (* size_get)(void *); |
57 | size_t (* size_get)(fs_node_t *); |
54 | unsigned (* lnkcnt_get)(void *); |
58 | unsigned (* lnkcnt_get)(fs_node_t *); |
55 | bool (* has_children)(void *); |
59 | bool (* has_children)(fs_node_t *); |
56 | void *(* root_get)(dev_handle_t); |
60 | fs_node_t *(* root_get)(dev_handle_t); |
57 | char (* plb_get_char)(unsigned pos); |
61 | char (* plb_get_char)(unsigned pos); |
58 | bool (* is_directory)(void *); |
62 | bool (* is_directory)(fs_node_t *); |
59 | bool (* is_file)(void *); |
63 | bool (* is_file)(fs_node_t *); |
60 | } libfs_ops_t; |
64 | } libfs_ops_t; |
61 | 65 | ||
62 | typedef struct { |
66 | typedef struct { |
63 | int fs_handle; /**< File system handle. */ |
67 | int fs_handle; /**< File system handle. */ |
64 | ipcarg_t vfs_phonehash; /**< Initial VFS phonehash. */ |
68 | ipcarg_t vfs_phonehash; /**< Initial VFS phonehash. */ |