setfsent.3.gz

GETFSENT

NAME

getfsent, getfsspec, getfsfile, setfsent, endfsent - handle fstab entries

SYNOPSIS

#include <fstab.h> I void endfsent(void); I struct fstab *getfsent(void); I struct fstab *getfsfile(const char * mount_point ); I struct fstab *getfsspec(const char * special_file ); I int setfsent(void);

DESCRIPTION

These functions read from the file R /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 R setfsent () opens the file when required and positions it at the first line.
The function R getfsent () parses the next line from the file. (After opening it when required.)
The function R endfsent () closes the file when required.
The function R 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 R 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 R getfsent (), R getfsfile (), and R getfsspec () return a pointer to a struct fstab, while R setfsent () returns 1. Upon failure or end-of-file, these functions return NULL and 0, respectively.

CONFORMING TO

These functions are not in POSIX.1-2001. Several operating systems have them, e.g., *BSD, SunOS, Digital Unix, AIX (which also has a R 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 R getfsfile () and R getfsspec () only return the first occurrence, these two functions are not suitable for use under Linux.

SEE ALSO