The Open Group Base Specifications Issue 6
IEEE Std 1003.1, 2004 Edition
Copyright © 2001-2004 The IEEE and The Open Group, All Rights reserved.

NAME

sys/statvfs.h - VFS File System information structure

SYNOPSIS

[XSI] [Option Start] #include <sys/statvfs.h> [Option End]

DESCRIPTION

The <sys/statvfs.h> header shall define the statvfs structure that includes at least the following members:

unsigned long f_bsize    File system block size. 
unsigned long f_frsize   Fundamental file system block size. 
fsblkcnt_t    f_blocks   Total number of blocks on file system in units of f_frsize. 
fsblkcnt_t    f_bfree    Total number of free blocks. 
fsblkcnt_t    f_bavail   Number of free blocks available to 
                         non-privileged process. 
fsfilcnt_t    f_files    Total number of file serial numbers. 
fsfilcnt_t    f_ffree    Total number of free file serial numbers. 
fsfilcnt_t    f_favail   Number of file serial numbers available to 
                         non-privileged process. 
unsigned long f_fsid     File system ID. 
unsigned long f_flag     Bit mask of f_flag values. 
unsigned long f_namemax  Maximum filename length. 

The fsblkcnt_t and fsfilcnt_t types shall be defined as described in <sys/types.h>.

The following flags for the f_flag member shall be defined:

ST_RDONLY
Read-only file system.
ST_NOSUID
Does not support the semantics of the ST_ISUID and ST_ISGID file mode bits.

The following shall be declared as functions and may also be defined as macros. Function prototypes shall be provided.

int statvfs(const char *restrict, struct statvfs *restrict);
int fstatvfs(int, struct statvfs *);


The following sections are informative.

APPLICATION USAGE

None.

RATIONALE

None.

FUTURE DIRECTIONS

None.

SEE ALSO

<sys/types.h>, the System Interfaces volume of IEEE Std 1003.1-2001, fstatvfs(), statvfs()

CHANGE HISTORY

First released in Issue 4, Version 2.

Issue 5

The type of f_blocks, f_bfree, and f_bavail is changed from unsigned long to fsblkcnt_t; the type of f_files, f_ffree, and f_favail is changed from unsigned long to fsfilcnt_t.

Issue 6

The Open Group Corrigendum U035/5 is applied. In the DESCRIPTION, the types fsblkcnt_t and fsfilcnt_t have been described.

The restrict keyword is added to the prototype for statvfs().

IEEE Std 1003.1-2001/Cor 1-2002, item XBD/TC1/D6/18 is applied, changing the description of ST_NOSUID from ``Does not support setuid()/ setgid() semantics'' to ``Does not support the semantics of the ST_ISUID and ST_ISGID file mode bits''.

End of informative text.

UNIX ® is a registered Trademark of The Open Group.
POSIX ® is a registered Trademark of The IEEE.
[ Main Index | XBD | XCU | XSH | XRAT ]