Manpages - getfsent.3
Table of Contents
NAME
getfsent, getfsspec, getfsfile, setfsent, endfsent - handle fstab entries
SYNOPSIS
#include <fstab.h> int setfsent(void); struct fstab *getfsent(void); void endfsent(void); struct fstab *getfsfile(const char *mount_point); struct fstab *getfsspec(const char *special_file);
DESCRIPTION
These functions read from the file /etc/fstab. The struct fstab is defined by:
struct fstab { char *fs_spec; /* block device name */ char *fs_file; /* mount point */ char *fs_vfstype; /* filesystem type */ char *fs_mntops; /* mount options */ const char *fs_type; /* rw/rq/ro/sw/xx option */ int fs_freq; /* dump frequency, in days */ int fs_passno; /* pass number on parallel dump */ };
Here the field fs_type contains (on a *BSD system) one of the five strings “rw”, “rq”, “ro”, “sw”, “xx” (read-write, read-write with quota, read-only, swap, ignore).
The function *setfsent*() opens the file when required and positions it at the first line.
The function *getfsent*() parses the next line from the file. (After opening it when required.)
The function *endfsent*() closes the file when required.
The function *getfsspec*() searches the file from the start and returns the first entry found for which the fs_spec field matches the special_file argument.
The function *getfsfile*() searches the file from the start and returns the first entry found for which the fs_file field matches the mount_point argument.
RETURN VALUE
Upon success, the functions *getfsent*(), *getfsfile*(), and *getfsspec*() return a pointer to a struct fstab, while *setfsent*() returns 1. Upon failure or end-of-file, these functions return NULL and 0, respectively.
ATTRIBUTES
For an explanation of the terms used in this section, see *attributes*(7).
Interface | Attribute | Value |
*endfsent*(), *setfsent*() | Thread safety | MT-Unsafe race:fsent |
*getfsent*(), *getfsspec*(), *getfsfile*() | Thread safety | MT-Unsafe race:fsent locale |
CONFORMING TO
These functions are not in POSIX.1. Several operating systems have them, for example, *BSD, SunOS, Digital UNIX, AIX (which also has a *getfstype*()). HP-UX has functions of the same names, that however use a struct checklist instead of a struct fstab, and calls these functions obsolete, superseded by *getmntent*(3).
NOTES
These functions are not thread-safe.
Since Linux allows mounting a block special device in several places, and since several devices can have the same mount point, where the last device with a given mount point is the interesting one, while *getfsfile*() and *getfsspec*() only return the first occurrence, these two functions are not suitable for use under Linux.
SEE ALSO
*getmntent*(3), *fstab*(5)
COLOPHON
This page is part of release 5.13 of the Linux man-pages project. A description of the project, information about reporting bugs, and the latest version of this page, can be found at https://www.kernel.org/doc/man-pages/.