http://prdownloads.sourceforge.net/lufs/lufs-0.9.6.tar.gz?download
[lufs.git] / filesystems / gnetfs / vtree.h
1 #ifndef _VTREE_H_
2 #define _VTREE_H_
3
4 struct vtree;
5
6 struct ventry {
7     struct list_head    children;
8     struct list_head    list;
9     struct lufs_fattr   fattr;
10     struct vtree        *vtree;
11     unsigned            nr_children;
12     char                *name;
13     char                *link;
14     void                *private;
15     time_t              stamp;
16 };
17
18 struct vtree {
19     struct ventry       root;
20     unsigned            entries;
21 };
22
23 struct vtree *lu_vtree_create(struct lufs_fattr*);
24 struct ventry *lu_vtree_search(struct ventry*, char*);
25 struct ventry *lu_vtree_find(struct vtree*, char*);
26 void lu_vtree_destroy(struct vtree*);
27 void lu_vtree_delete(struct ventry*);
28 int lu_vtree_add(struct vtree*, char*, char*, char*, struct lufs_fattr*, void*);int lu_vtree_lookup(struct vtree*, char*, struct lufs_fattr*, char*, int, void**);
29 int lu_vtree_readdir(struct vtree*, char*, int, char*, int);
30
31 #endif