STATVFS(2)

NAME
statvfs, fstatvfs, - get file system statistics

LIBRARY
libc

SYNOPSIS
#include <sys/statvfs.h>
int
statvfs(const char *path, struct statvfs *buf);
int
fstatvfs(int fd, struct statvfs *buf);

DESCRIPTION
statvfs() returns information about a mounted file system. path is the path name of any file within the mounted file system. buf is a pointer to a statvfs structure defined in statvfs(5).

fstatvfs() returns the same information about an open file referenced by descriptor fd.

RETURN VALUES
Upon successful completion, a value of 0 is returned. Otherwise, -1 is returned and the global variable errno is set to indicate the error.

ERRORS
statvfs() fails if one or more of the following are true:

[ENOTDIR]
    A component of the path prefix of path is not a directory.

[ENAMETOOLONG]
    The length of a component of path exceeds NAME_MAX characters, or the length of path exceeds PATH_MAX 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.

fstatvfs() fails if one or more 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.

SEE ALSO
statvfs(5)

HISTORY
The statvfs(), and fstatvfs(), functions first appeared in NetBSD 3.0 to replace the statfs() family of functions which first appeared in 4.4BSD.