diff options
Diffstat (limited to 'isofs/inode.c')
-rw-r--r-- | isofs/inode.c | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/isofs/inode.c b/isofs/inode.c index cba3e691..0926ca28 100644 --- a/isofs/inode.c +++ b/isofs/inode.c @@ -547,8 +547,19 @@ diskfs_write_disknode (struct node *np, int wait) error_t diskfs_set_statfs (struct statfs *st) { - /* XXX return something useful */ - bzero (st, sizeof *st); + /* There is no easy way to determine the number of files on an + ISO 9660 filesystem. */ + st->f_type = FSTYPE_ISO9660; + st->f_bsize = logical_block_size; + st->f_blocks = isonum_733 (sblock->vol_sp_size); + st->f_bfree = 0; + st->f_bavail = 0; + st->f_files = 0; + st->f_ffree = 0; + st->f_fsid = getpid (); + st->f_namelen = 0; + st->__f_favail = 0; + st->__f_frsize = logical_block_size; return 0; } |