*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->OpenBSD man pages -> fstatfs (2)              
Title
Content
Arch
Section
 

STATFS(2)

Contents


NAME    [Toc]    [Back]

     statfs - get file system statistics

SYNOPSIS    [Toc]    [Back]

     #include <sys/param.h>
     #include <sys/mount.h>

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

     int
     fstatfs(int fd, struct statfs *buf);

DESCRIPTION    [Toc]    [Back]

     statfs() 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 statfs structure defined as follows:

     typedef struct { int32_t val[2]; } fsid_t;

     #define MFSNAMELEN   16 /* length of fs type name, including
nul */
     #define  MNAMELEN      90  /*  length of buffer for returned
name */

     struct statfs {
         u_int32_t  f_flags;       /* copy of mount flags */
         int32_t    f_bsize;        /*  fundamental  file  system
block size */
         u_int32_t  f_iosize;      /* optimal transfer block size
*/
         u_int32_t  f_blocks;      /* total data blocks  in  file
system */
         u_int32_t  f_bfree;       /* free blocks in fs */
         int32_t     f_bavail;       /* free blocks avail to nonsuperuser */
         u_int32_t  f_files;       /* total file  nodes  in  file
system */
         u_int32_t  f_ffree;       /* free file nodes in fs */
         fsid_t     f_fsid;        /* file system id */
         uid_t       f_owner;       /* user that mounted the file
system */
         u_int32_t  f_syncwrites;  /* count of sync writes  since
mount */
         u_int32_t  f_asyncwrites; /* count of async writes since
mount */
         u_int32_t  f_ctime;       /* last mount [-u] time */
         u_int32_t  f_spare[3];    /* spare for later */
         char       f_fstypename[MFSNAMELEN]; /* fs type name */
         char        f_mntonname[MNAMELEN];     /*  directory  on
which mounted */
         char        f_mntfromname[MNAMELEN];   /*  mounted  file
system */
         union mount_info mount_info;          /*  per-filesystem
mount options */
     };

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

RETURN VALUES    [Toc]    [Back]

     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    [Toc]    [Back]

     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
{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.

     fstatfs() 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    [Toc]    [Back]

      
      
     df(1), mount(2), stat(2)

HISTORY    [Toc]    [Back]

     The statfs() function first appeared in 4.4BSD.

OpenBSD      3.6                        February     11,     1994
[ Back ]
 Similar pages
Name OS Title
ff_vxfs HP-UX fast find: list file names and statistics for a VxFS file system
ff_hfs HP-UX list file names and statistics for HFS file system
ff HP-UX list file names and statistics for a file system
nfsstat Tru64 Network File System statistics
bsde_get_rule_slots FreeBSD file system firewall statistics
cachefsstat HP-UX Cache File System statistics
bsde_get_rule_count FreeBSD file system firewall statistics
ustat HP-UX get mounted file system statistics
nfsstat HP-UX Network File System statistics
rmtab HP-UX local file system mount statistics
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service