Index Index for
Section 3
Index Alphabetical
listing for G
Index 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 Index for
Section 3
Index Alphabetical
listing for G
Index Top of
page