allow specifiying access mode when creating twifs file node
[lunaix-os.git] / lunaix-os / kernel / fs / fsm.c
index 950583857b981857d2a5d2ce35e2f1c990f60b6a..8638905b44a9bb2ff46853324c7a971e8b34f91d 100644 (file)
@@ -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