.\" Copyright (c) 1989, 1991 The Regents of the University of California.
.\" %sccs.include.redist.man%
.\" @(#)getfsstat.2 6.5 (Berkeley) %G%
.Nd get list of all mounted filesystems
.Fd #include <sys/types.h>
.Fd #include <sys/mount.h>
.Fn getfsstat "struct statfs *buf" "long bufsize" "int flags"
returns information about all mounted filesystems.
structures defined as follows:
#define MNAMELEN 32 /* length of buffer for returned name */
short f_type; /* type of filesystem (see below) */
short f_flags; /* copy of mount flags */
long f_fsize; /* fundamental filesystem block size */
long f_bsize; /* optimal transfer block size */
long f_blocks; /* total data blocks in filesystem */
long f_bfree; /* free blocks in fs */
long f_bavail; /* free blocks avail to non-superuser */
long f_files; /* total file nodes in filesystem */
long f_ffree; /* free file nodes in fs */
fsid_t f_fsid; /* filesystem id */
long f_spare[6]; /* spare for later */
char f_mntonname[MNAMELEN]; /* directory on which mounted */
char f_mntfromname[MNAMELEN]; /* mounted filesystem */
Fields that are undefined for a particular filesystem are set to -1.
The buffer is filled with an array of
structures, one for each mounted filesystem
up to the size specified by
returns just the number of mounted filesystems.
will return the information it has available without requesting
an update from each filesystem.
Thus, some of the information will be out of date, but
will not block waiting for information from a filesystem that is
Upon successful completion, the number of
Otherwise, -1 is returned and the global variable
is set to indicate the error.
fails if one or more of the following are true:
points to an invalid address.
An I/O error occurred while reading from or writing to the filesystem.
function call is currently under development.