Lines Matching defs:parent
141 struct node *parent;
685 static size_t name_hash(struct fuse *f, fuse_ino_t parent,
688 uint64_t hash = parent;
733 size_t hash = name_hash(f, node->parent->nodeid, node->name);
740 unref_node(f, node->parent);
744 node->parent = NULL;
772 size_t newhash = name_hash(f, node->parent->nodeid, node->name);
791 struct node *parent = get_node(f, parentid);
801 parent->refctr ++;
802 node->parent = parent;
846 static struct node *lookup_node(struct fuse *f, fuse_ino_t parent,
849 size_t hash = name_hash(f, parent, name);
853 if (node->parent->nodeid == parent &&
867 static struct node *find_node(struct fuse *f, fuse_ino_t parent,
874 node = get_node(f, parent);
876 node = lookup_node(f, parent, name);
887 if (hash_name(f, node, parent, name) == -1) {
980 node != end && node->nodeid != FUSE_ROOT_ID; node = node->parent) {
1032 node = node->parent) {
1034 if (node->name == NULL || node->parent == NULL)
1259 node = node->parent) {
1260 if (node->name == NULL || node->parent == NULL)
1270 node = node->parent) {
1271 if (node->name == NULL || node->parent == NULL)
2632 static void fuse_lib_lookup(fuse_req_t req, fuse_ino_t parent,
2649 dot = get_node_nocheck(f, parent);
2659 parent = get_node(f, parent)->parent->nodeid;
2666 err = get_path_name(f, parent, name, &path);
2672 err = lookup_path(f, parent, name, path, &e, NULL);
2679 free_path(f, parent, path);
2891 static void fuse_lib_mknod(fuse_req_t req, fuse_ino_t parent, const char *name,
2899 err = get_path_name(f, parent, name, &path);
2912 err = lookup_path(f, parent, name, path, &e,
2920 err = lookup_path(f, parent, name, path, &e,
2924 free_path(f, parent, path);
2929 static void fuse_lib_mkdir(fuse_req_t req, fuse_ino_t parent, const char *name,
2937 err = get_path_name(f, parent, name, &path);
2944 err = lookup_path(f, parent, name, path, &e, NULL);
2946 free_path(f, parent, path);
2951 static void fuse_lib_unlink(fuse_req_t req, fuse_ino_t parent,
2959 err = get_path_wrlock(f, parent, name, &path, &wnode);
2964 if (!f->conf.hard_remove && is_open(f, parent, name)) {
2965 err = hide_node(f, path, parent, name);
2968 if (!is_open(f, parent, wnode->name)) {
2975 remove_node(f, parent, wnode->name);
2983 remove_node(f, parent, name);
2986 free_path_wrlock(f, parent, wnode, path);
2991 static void fuse_lib_rmdir(fuse_req_t req, fuse_ino_t parent, const char *name)
2998 err = get_path_wrlock(f, parent, name, &path, &wnode);
3006 remove_node(f, parent, name);
3007 free_path_wrlock(f, parent, wnode, path);
3013 fuse_ino_t parent, const char *name)
3020 err = get_path_name(f, parent, name, &path);
3027 err = lookup_path(f, parent, name, path, &e, NULL);
3029 free_path(f, parent, path);
3129 static void fuse_lib_create(fuse_req_t req, fuse_ino_t parent,
3139 err = get_path_name(f, parent, name, &path);
3144 err = lookup_path(f, parent, name, path, &e, fi);
3177 free_path(f, parent, path);
3446 static fuse_ino_t lookup_nodeid(struct fuse *f, fuse_ino_t parent,
3453 node = lookup_node(f, parent, name);
5004 root->parent = NULL;