X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/1fe5f5eb5378a47bf0f3451762743c162e40faad..8c06c883e7b13c115d5ff207f79d4b68fccd5ad6:/lunaix-os/kernel/fs/twifs/twifs.c diff --git a/lunaix-os/kernel/fs/twifs/twifs.c b/lunaix-os/kernel/fs/twifs/twifs.c index 729b5f7..704a103 100644 --- a/lunaix-os/kernel/fs/twifs/twifs.c +++ b/lunaix-os/kernel/fs/twifs/twifs.c @@ -8,7 +8,7 @@ * @copyright Copyright (c) 2022 * */ -#include +#include #include #include #include @@ -118,7 +118,7 @@ __twifs_dirlookup(struct v_inode* inode, struct v_dnode* dnode) { struct twifs_node* twi_node = (struct twifs_node*)inode->data; - if (!(twi_node->itype & VFS_IFDIR)) { + if ((twi_node->itype & F_FILE)) { return ENOTDIR; } @@ -180,7 +180,7 @@ __twifs_openfile(struct v_inode* inode, struct v_file* file) int twifs_rm_node(struct twifs_node* node) { - if ((node->itype & VFS_IFDIR) && !llist_empty(&node->children)) { + if (!(node->itype & F_FILE) && !llist_empty(&node->children)) { return ENOTEMPTY; } llist_delete(&node->siblings); @@ -192,7 +192,7 @@ struct twifs_node* twifs_file_node_vargs(struct twifs_node* parent, const char* fmt, va_list args) { char buf[VFS_NAME_MAXLEN]; - size_t len = __ksprintf_internal(buf, fmt, VFS_NAME_MAXLEN, args); + size_t len = ksnprintfv(buf, fmt, VFS_NAME_MAXLEN, args); return __twifs_new_node(parent ? parent : fs_root, buf, len, VFS_IFSEQDEV); } @@ -217,7 +217,7 @@ twifs_dir_node(struct twifs_node* parent, const char* fmt, ...) va_start(args, fmt); char buf[VFS_NAME_MAXLEN]; - size_t len = __ksprintf_internal(buf, fmt, VFS_NAME_MAXLEN, args); + size_t len = ksnprintfv(buf, fmt, VFS_NAME_MAXLEN, args); struct twifs_node* twi_node = __twifs_new_node(parent ? parent : fs_root, buf, len, VFS_IFDIR); @@ -241,16 +241,12 @@ twifs_init() fs_root = twifs_dir_node(NULL, NULL, 0, 0); } +EXPORT_FILE_SYSTEM(twifs, twifs_init); void twifs_register_plugins() { - int i = 0; - ptr_t init_twifs_plugin_fn; - ldga_foreach(twiplugin_inits, ptr_t, i, init_twifs_plugin_fn) - { - ((void (*)())init_twifs_plugin_fn)(); - } + ldga_invoke_fn0(twiplugin_inits); } int