diff options
author | Mark Glines <mark@glines.org> | 2002-03-17 06:58:33 +0000 |
---|---|---|
committer | Mark Glines <mark@glines.org> | 2002-03-17 06:58:33 +0000 |
commit | 85801bbad1b3f1160bd35608f30048faa8d94995 (patch) | |
tree | 3cf670052dc61d8ec2da79c21047bc41c1db6b23 /lib | |
parent | 3e3d081d28ff60331d791ae9bc4e1f8d98701d86 (diff) | |
download | libfuse-85801bbad1b3f1160bd35608f30048faa8d94995.tar.gz |
'struct statfs' changes size, and entries within it change position, depending
on which headerfiles are included and which macros are defined. Because its
unreliable, we now use struct fuse_statfs everywhere except in the kernel.
Also fixed some perl fuse_main semantics - it now works much better when
multithreading is disabled.
Diffstat (limited to 'lib')
-rw-r--r-- | lib/fuse.c | 15 |
1 files changed, 1 insertions, 14 deletions
@@ -306,16 +306,6 @@ static void convert_stat(struct stat *stbuf, struct fuse_attr *attr) attr->_dummy = 4096; } -static void convert_statfs(struct statfs *st, struct fuse_statfs *fst) -{ - fst->block_size = st->f_bsize; - fst->blocks = st->f_blocks; - fst->blocks_free = st->f_bavail; - fst->files = st->f_files; - fst->files_free = st->f_ffree; - fst->namelen = st->f_namelen; -} - static int fill_dir(struct fuse_dirhandle *dh, char *name, int type) { struct fuse_dirent dirent; @@ -806,14 +796,11 @@ static void do_write(struct fuse *f, struct fuse_in_header *in, static void do_statfs(struct fuse *f, struct fuse_in_header *in) { int res; - struct statfs sbuf; struct fuse_statfs_out arg; res = -ENOSYS; if(f->op.statfs) - res = f->op.statfs(&sbuf); - if(res == 0) - convert_statfs(&sbuf,&arg.st); + res = f->op.statfs(&arg.st); send_reply(f, in, res, &arg, sizeof(arg)); } |