 |
Index for Section 3 |
|
 |
Alphabetical listing for G |
|
 |
Bottom of page |
|
getmntinfo(3)
NAME
getmntinfo, getmntinfo_r - Get information about mounted file systems
LIBRARY
Standard C Library (libc)
SYNOPSIS
#include <sys/types.h>
#include <sys/mount.h>
int getmntinfo(
struct statfs **mntbufp,
int flags);
The following obsolete function is supported only for backward
compatibility reasons. You should not use it in new designs.
int getmntinfo_r(
struct statfs **mntbufp,
int flags,
int *mntsizep,
int *bufsizep);
PARAMETERS
mntbufp Points to a location to which the getmntinfo function returns an
array of statfs structures that describe each currently mounted
file system. If you specify an invalid address, [EFAULT] status
is returned in errno. If you specify NULL, an invalid memory
access occurs.
flags Specifies one of the following flags to be passed transparently
to the getfsstat() function:
MNT_WAIT Waits for an update from each file system before
returning information.
MNT_NOWAIT
Information is returned without requesting an update
from each file system. Thus, some of the information
will be out of date, but the getfsstat() function will
not block waiting for information from a file system
that is unable to respond.
mntsizep Points to the location where the number of mounted file systems
is stored.
bufsizep Points to the size of the buffer containing the array of statfs
structures for all mounted file systems.
DESCRIPTION
The getmntinfo() function returns an array of statfs structures describing
each currently mounted file system (see the statfs() reference page). The
getmntinfo() function takes a struct statfs **mntbufp, which it sets to a
malloc() ed buffer.
The getmntinfo() function passes its flags parameter transparently to
getfsstat().
NOTES
The getmntinfo() function stores information on the malloc() ed buffer in a
thread-specific buffer. Subsequent calls to this function from the same
thread must therefore use the same buffer argument. The buffer will be
overwritten, and possibly moved, on subsequent calls.
The getmntinfo_r() function is an obsolete reentrant version of the
getmntinfo() function. Note that you must set the mntbufp parameter to NULL
before its first access by the getmntinfo_r() function. This prevents the
free() function from being called on whatever mntbufp already contains by
the first getmntinfo_r() call. You must also set the mntsizep and bufsizep
to 0 (zero).
RETURN VALUES
Upon successful completion, the getmntinfo() function returns a count of
the number of elements in the array. Upon failure, it returns a value of 0
(zero) is returned and leaves mntbufp unmodified.
Upon successful completion, the getmntinfo_r() function stores the count of
the number of elements in the array into the int pointed to by mntsizep and
returns a value of 0 (zero). Upon failure, it returns a value of -1.
ERRORS
If the getmntinfo() or getmntinfo_r() function fails, errno may be set to
the following:
[EFAULT] The mntbufp parameter points to a non-NULL invalid address.
[EIO] An I/O error occurred while reading from or writing to the file
system.
[EINVAL] If the bufsizep parameter is invalid.
[ENOMEM] If there is not enough storage memory in the system.
[EOVERFLOW]
[Tru64 UNIX] The structure pointed to by the mntbufp parameter
cannot correctly represent the value to be returned.
This error can occur in applications compiled on DIGITAL UNIX
systems, on Tru64 UNIX systems earlier than Version 5.0, or on
any system while using the __V40_OBJ_COMPAT compiler macro.
These applications use a <statfs> structure not compatible with
Tru64 UNIX Version 5.0 for the following fields: f_blocks,
f_bfree, f_bavail, f_mntonname, f_mntfromname.
RELATED INFORMATION
Functions: getfsstat(2), statfs(2), mount(2), malloc(3)
Commands: mount(8)
 |
Index for Section 3 |
|
 |
Alphabetical listing for G |
|
 |
Top of page |
|