X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/7b8a1bcad75628f9add4590db2bb9b8e418ee8eb..c8cc1783ef26803aeb94747ff8704bbe6962628a:/lunaix-os/kernel/fs/fsm.c diff --git a/lunaix-os/kernel/fs/fsm.c b/lunaix-os/kernel/fs/fsm.c index 9505838..8638905 100644 --- a/lunaix-os/kernel/fs/fsm.c +++ b/lunaix-os/kernel/fs/fsm.c @@ -66,8 +66,21 @@ fsm_new_fs(char* name, size_t name_len) return fs; } +void +fsm_itbegin(struct fs_iter* iterator) +{ + iterator->fs = list_entry(&fs_flatlist, struct filesystem, fs_flat); +} + +bool +fsm_itnext(struct fs_iter* iterator) +{ + iterator->fs = list_next(iterator->fs, struct filesystem, fs_flat); + return &iterator->fs->fs_flat != &fs_flatlist; +} + static void -read_fslist(struct twimap *mapping) +__twimap_read_fstab(struct twimap *mapping) { struct filesystem *pos, *n; llist_for_each(pos, n, &fs_flatlist, fs_flat) @@ -79,7 +92,6 @@ read_fslist(struct twimap *mapping) static void fstab_twifs_plugin() { - struct twimap* map = twifs_mapping(NULL, NULL, "fstab"); - map->read = read_fslist; + twimap_export_value(NULL, fstab, FSACL_ugR, NULL); } EXPORT_TWIFS_PLUGIN(fstab, fstab_twifs_plugin); \ No newline at end of file