Lines Matching refs:_volume

61 static int websearchfs_create_gen(fs_volume *_volume, fs_node *dir, const char *name, int omode, int perms, ino_t *vnid, fs_node **node, struct attr_entry *iattrs, bool mkdir, bool uniq);
62 static int websearchfs_free_vnode(fs_volume *_volume, fs_node *node);
83 static int websearchfs_publish_static_entries(fs_volume *_volume)
85 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
96 err = websearchfs_create_gen(_volume, dir, "Search the Web", 0, 0444, NULL, &n, template_1_attrs, false, true);
101 err = websearchfs_create_gen(_volume, dir, "README", 0, 0444, NULL, &n, text_attrs, false, true);
108 err = websearchfs_create_gen(_volume, dir, "Author", 0, 0444, NULL, &n, mailto_me_bookmark_attrs, false, true);
187 static status_t websearchfs_unmount(fs_volume *_volume)
189 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
199 websearchfs_free_vnode(_volume, node);
203 put_vnode(_volume, ns->rootid);
219 static int websearchfs_free_vnode(fs_volume *_volume, fs_node *node)
221 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
233 static status_t websearchfs_remove_vnode(fs_volume *_volume, fs_vnode *_node, bool reenter)
235 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
258 websearchfs_free_vnode(_volume, node);
264 static status_t websearchfs_read_vnode(fs_volume *_volume, ino_t vnid, fs_vnode *_node, int* _type, uint32* _flags, bool reenter)
266 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
269 TRACE("%s(%" B_PRId32 ", %" B_PRId64 ", %s)\n", __FUNCTION__, _volume->id, vnid, reenter?"r":"!r");
288 static status_t websearchfs_release_vnode(fs_volume *_volume, fs_vnode *_node, bool reenter)
291 TRACE("%s(%" B_PRId32 ", %" B_PRId64 ", %s)\n", __FUNCTION__, _volume->id, node->vnid, reenter?"r":"!r");
302 static status_t websearchfs_get_vnode_name(fs_volume *_volume, fs_vnode *_node, char *buffer, size_t len)
304 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
313 static status_t websearchfs_walk(fs_volume *_volume, fs_vnode *_base, const char *file, ino_t *vnid)
315 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
348 if (get_vnode(_volume, *vnid, (void **)&dummy) != B_OK) /* inc ref count */
356 static status_t websearchfs_opendir(fs_volume *_volume, fs_vnode *_node, void **cookie)
358 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
387 static status_t websearchfs_closedir(fs_volume *_volume, fs_vnode *_node, void *_cookie)
389 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
405 static status_t websearchfs_rewinddir(fs_volume *_volume, fs_vnode *_node, void *_cookie)
407 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
415 static status_t websearchfs_readdir(fs_volume *_volume, fs_vnode *_node, void *_cookie,
418 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
473 static status_t websearchfs_free_dircookie(fs_volume *_volume, fs_vnode *_node, void *_cookie)
475 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
490 static status_t websearchfs_rstat(fs_volume *_volume, fs_vnode *_node, struct stat *st)
492 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
510 static status_t websearchfs_rfsstat(fs_volume *_volume, struct fs_info *info)
512 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
528 static status_t websearchfs_open(fs_volume *_volume, fs_vnode *_node, int omode, void **cookie)
530 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
583 static status_t websearchfs_close(fs_volume *_volume, fs_vnode *_node, void *_cookie)
585 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
603 static status_t websearchfs_free_cookie(fs_volume *_volume, fs_vnode *_node, void *_cookie)
605 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
617 err = remove_vnode(_volume, node->vnid);
631 static status_t websearchfs_read(fs_volume *_volume, fs_vnode *_node, void *_cookie, off_t pos, void *buf, size_t *len)
633 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
648 static status_t websearchfs_write(fs_volume *_volume, fs_vnode *_node, void *_cookie, off_t pos, const void *buf, size_t *len)
651 TRACE("write(%" B_PRId32 ", %" B_PRId64 ", %jd, %zu)\n", _volume->id, node->vnid, pos, *len);
656 static status_t websearchfs_wstat(fs_volume *_volume, fs_vnode *_node, const struct stat *st, uint32 mask)
659 TRACE("wstat(%" B_PRId32 ", %" B_PRId64 ", , 0x%08" B_PRIx32 ")\n", _volume->id, node->vnid, mask);
663 static status_t websearchfs_wfsstat(fs_volume *_volume, const struct fs_info *info, uint32 mask)
665 TRACE("wfsstat(%" B_PRId32 ", , 0x%08" B_PRIx32 ")\n", _volume->id, mask);
679 static int websearchfs_create_gen(fs_volume *_volume, fs_node *dir, const char *name, int omode, int perms, ino_t *vnid, fs_node **node, struct attr_entry *iattrs, bool mkdir, bool uniq)
681 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
783 static status_t websearchfs_create(fs_volume *_volume, fs_vnode *_dir, const char *name, int omode, int perms, void **cookie, ino_t *vnid)
785 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
794 err = websearchfs_create_gen(_volume, dir, name, omode, perms, vnid, &n, NULL, false, false);
799 err = websearchfs_open(_volume, &child, omode, cookie);
803 static int websearchfs_unlink_gen(fs_volume *_volume, fs_node *dir, const char *name)
805 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
830 remove_vnode(_volume, n->vnid);
838 static status_t websearchfs_unlink(fs_volume *_volume, fs_vnode *_dir, const char *name)
840 //fs_nspace *ns = (fs_nspace *)_volume->private_volume;
842 return websearchfs_unlink_gen(_volume, (fs_node *)_dir->private_node, name);
845 static status_t websearchfs_rmdir(fs_volume *_volume, fs_vnode *_dir, const char *name)
847 //fs_nspace *ns = (fs_nspace *)_volume->private_volume;
849 TRACE("rmdir(%" B_PRId32 ", %" B_PRId64 ", %s)\n", _volume->id, dir->vnid, name);
850 return websearchfs_unlink(_volume, _dir, name);
853 static int websearchfs_unlink_node_rec(fs_volume *_volume, fs_node *node)
855 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
868 err = websearchfs_unlink_node_rec(_volume, n);
872 err = websearchfs_unlink_gen(_volume, node->parent, node->name);
876 static status_t websearchfs_access(fs_volume *_volume, fs_vnode *_node, int mode)
878 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
885 static status_t websearchfs_mkdir(fs_volume *_volume, fs_vnode *_dir, const char *name, int perms)
887 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
890 return websearchfs_create_gen(_volume, dir, name, O_EXCL, perms, NULL, NULL, folders_attrs, true, false);
895 static status_t websearchfs_open_attrdir(fs_volume *_volume, fs_vnode *_node, void **cookie)
897 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
924 static status_t websearchfs_close_attrdir(fs_volume *_volume, fs_vnode *_node, void *_cookie)
926 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
939 static status_t websearchfs_free_attrdircookie(fs_volume *_volume, fs_vnode *_node, void *_cookie)
941 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
955 static status_t websearchfs_rewind_attrdir(fs_volume *_volume, fs_vnode *_node, void *_cookie)
957 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
965 static status_t websearchfs_read_attrdir(fs_volume *_volume, fs_vnode *_node, void *_cookie,
968 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
1017 static status_t websearchfs_open_attr_h(fs_volume *_volume, fs_vnode *_node, const char *name, int omode, void **cookie)
1019 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
1078 static status_t websearchfs_close_attr_h(fs_volume *_volume, fs_vnode *_node, void *_cookie)
1080 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
1099 static status_t websearchfs_free_attr_cookie_h(fs_volume *_volume, fs_vnode *_node, void *_cookie)
1101 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
1120 static status_t websearchfs_read_attr_stat(fs_volume *_volume, fs_vnode *_node, void *_cookie,
1123 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
1138 static status_t websearchfs_read_attr(fs_volume *_volume, fs_vnode *_node, void *_cookie,
1141 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
1182 static status_t websearchfs_open_query(fs_volume *_volume, const char *query, uint32 flags,
1185 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
1252 err = get_vnode(_volume, qn->vnid, (void **)&dummy); /* inc ref count */
1271 err = websearchfs_create_gen(_volume, ns->root, qname, 0, 0755, NULL, &qn, folders_attrs, true, true);
1275 err = get_vnode(_volume, qn->vnid, (void **)&dummy); /* inc ref count */
1282 err = duckduckgo_request_open(qstring, _volume, qn, &qn->request);
1296 err = websearchfs_create_gen(_volume, qn, "B", 0, 0644, NULL, &n, fake_bookmark_attrs, false, true);
1330 put_vnode(_volume, qn->vnid);
1333 websearchfs_unlink_gen(_volume, ns->root, qn->name);
1342 static status_t websearchfs_close_query(fs_volume *_volume, void *_cookie)
1344 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
1363 err = websearchfs_unlink_node_rec(_volume, q);
1364 err = put_vnode(_volume, q->vnid);
1370 static status_t websearchfs_free_query_cookie(fs_volume *_volume, void *_cookie)
1375 TRACE("free_query_cookie(%" B_PRId32 ")\n", _volume->id);
1395 static status_t websearchfs_read_query(fs_volume *_volume, void *_cookie, struct dirent *buf,
1398 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
1437 fs_volume *_volume = request->volume;
1438 fs_nspace *ns = (fs_nspace *)_volume->private_volume;
1461 err = websearchfs_create_gen(_volume, qn, ename, 0, 0644, NULL, &n, bookmark_attrs, false, true);