STATFS(2-BSD) RISC/os Reference Manual STATFS(2-BSD)
NAME
statfs, fstatfs - get file system statistics
SYNOPSIS
#include <sys/vfs.h>
statfs(path, buf)
char *path;
struct statfs *buf;
fstatfs(fd, buf)
int fd;
struct statfs *buf;
DESCRIPTION
statfs returns information about a mounted file system.
path is the path name of any file within the mounted
filesystem. buf is a pointer to a statfs structure defined
as follows:
typedef struct {
long val[2];
} fsid_t;
struct statfs {
long f_type; /* type of info, zero for now */
long f_bsize; /* fundamental file system block size */
long f_blocks; /* total blocks in file system */
long f_bfree; /* free blocks */
long f_bavail; /* free blocks available to non-superuser */
long f_files; /* total file nodes in file system */
long f_ffree; /* free file nodes in fs */
fsid_t f_fsid; /* file system id */
long f_spare[7]; /* spare for later */
};
Fields that are undefined for a particular file system are
set to -1. fstatfs returns the same information about an
open file referenced by descriptor fd.
RETURN VALUE
Upon successful completion, a value of 0 is returned. Oth-
erwise, -1 is returned and the global variable errno is set
to indicate the error.
ERRORS
statfs fails if one or more of the following are true:
ENOTDIR A component of the path prefix of path is not
a directory.
EINVAL path contains a character with the high-order
bit set.
Printed 11/19/92 Page 1
STATFS(2-BSD) RISC/os Reference Manual STATFS(2-BSD)
ENAMETOOLONG The length of a component of path exceeds 255
characters, or the length of path exceeds
1023 characters.
ENOENT The file referred to by path does not exist.
EACCES Search permission is denied for a component
of the path prefix of path.
ELOOP Too many symbolic links were encountered in
translating path.
EFAULT buf or path points to an invalid address.
EIO An I/O error occurred while reading from or
writing to the file system.
fstatfs fails if one or both of the following are true:
EBADF fd is not a valid open file descriptor.
EFAULT buf points to an invalid address.
EIO An I/O error occurred while reading from or
writing to the file system.
Page 2 Printed 11/19/92