aboutsummaryrefslogtreecommitdiffstats
path: root/lib/fuse_i.h
diff options
context:
space:
mode:
authorMiklos Szeredi <miklos@szeredi.hu>2004-11-02 17:32:03 +0000
committerMiklos Szeredi <miklos@szeredi.hu>2004-11-02 17:32:03 +0000
commita13d90020721d30c3ac03b4e6905aa54cab1aed7 (patch)
tree7a919bf696f6fedbca5177bec5451894d5f81433 /lib/fuse_i.h
parent874e3c166213a1dec3d191f78adc87b156c3f6e8 (diff)
downloadlibfuse-a13d90020721d30c3ac03b4e6905aa54cab1aed7.tar.gz
added support for setting the st_ino field
Diffstat (limited to 'lib/fuse_i.h')
-rw-r--r--lib/fuse_i.h20
1 files changed, 12 insertions, 8 deletions
diff --git a/lib/fuse_i.h b/lib/fuse_i.h
index 2c7e2d0..ca230a9 100644
--- a/lib/fuse_i.h
+++ b/lib/fuse_i.h
@@ -19,18 +19,22 @@
remove it immediately */
#define FUSE_HARD_REMOVE (1 << 2)
+/** Use st_ino field in getattr instead of generating inode numbers */
+#define FUSE_USE_INO (1 << 3)
-typedef unsigned long fino_t;
+
+typedef unsigned long nodeid_t;
struct node {
struct node *name_next;
- struct node *ino_next;
- fino_t ino;
+ struct node *id_next;
+ nodeid_t nodeid;
unsigned int generation;
- fino_t parent;
+ nodeid_t parent;
char *name;
int mode;
int rdev;
+ unsigned long ino;
int version;
int open_count;
int is_hidden;
@@ -42,9 +46,9 @@ struct fuse {
struct fuse_operations op;
struct node **name_table;
size_t name_table_size;
- struct node **ino_table;
- size_t ino_table_size;
- fino_t ctr;
+ struct node **id_table;
+ size_t id_table_size;
+ nodeid_t ctr;
unsigned int generation;
unsigned int hidectr;
unsigned long fh_ctr;
@@ -58,7 +62,7 @@ struct fuse {
struct fuse_dirhandle {
struct fuse *fuse;
- fino_t dir;
+ nodeid_t dir;
FILE *fp;
};