setfsent

GETFSENT(3)                Linux Programmer's Manual               GETFSENT(3)

NAME
       getfsent,  getfsspec,  getfsfile, setfsent, endfsent - handle fstab en-
       tries

SYNOPSIS
       #include <fstab.h>

       void endfsent(void);

       struct fstab *getfsent(void);

       struct fstab *getfsfile(const char *mount_point);

       struct fstab *getfsspec(const char *special_file);

       int setfsent(void);

DESCRIPTION
       These functions read from the file /etc/fstab.  The struct fstab is de-
       fined by:

           struct fstab {
               char       *fs_spec;       /* block device name */
               char       *fs_file;       /* mount point */
               char       *fs_vfstype;    /* file-system 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  spe-
       cial_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, respec-
       tively.

ATTRIBUTES
       For an  explanation  of  the  terms  used  in  this  section,  see  at-
       tributes(7).

       +-------------+---------------+-----------------------------+
       |Interface    | Attribute     | Value                       |
       +-------------+---------------+-----------------------------+
       |endfsent(),  | Thread safety | MT-Unsafe race:fsent        |
       |setfsent()   |               |                             |
       +-------------+---------------+-----------------------------+
       |getfsent(),  | Thread safety | MT-Unsafe race:fsent locale |
       |getfsspec(), |               |                             |
       |getfsfile()  |               |                             |
       +-------------+---------------+-----------------------------+
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 getfs-
       file() 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.05 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/.

GNU                               2017-09-15                       GETFSENT(3)
Man Pages Copyright Respective Owners. Site Copyright (C) 1994 - 2024 Hurricane Electric. All Rights Reserved.