Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought



statfs(2)                                               statfs(2)



NAME
     statfs, fstatfs - get file system statistics

SYNOPSIS
     #include <sys/vfs.h>

     int statfs(path, buf)
     char *path;
     struct statfs *buf;

     int 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-super-user */
             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.

     ENAMETOOLONG        The length of a component of path
                         exceeds 255 characters, or the length of



Page 1                        CX/UX Programmer's Reference Manual





statfs(2)                                               statfs(2)



                         path exceeds 1023 characters.

     ENOENT              The file referred to by path does not
                         exist.

     EACCES              Search permission is denied for a com-
                         ponent 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
                         the file system.






























Page 2                        CX/UX Programmer's Reference Manual



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026