getmntent,  setmntent,  addmntent,  endmntent, hasmntopt -
       get file system descriptor file entry


       #include <stdio.h>
       #include <mntent.h>

       FILE *setmntent(const char *filename, const char *type);

       struct mntent *getmntent(FILE *filep);

       int addmntent(FILE *filep, const struct mntent *mnt);

       int endmntent(FILE *filep);

       char *hasmntopt(const struct mntent *mnt, const char *opt);


       These routines are used to access the file system descrip­
       tion  file /etc/fstab and the mounted file system descrip­
       tion file /etc/mtab.

       The setmntent() function opens the file system description
       file filep and returns a file pointer which can be used by
       getmntent().  The argument type  is  the  type  of  access
       required and can take the same values as the mode argument
       of fopen(3).

       The getmntent() function reads the next line from the file
       system  description  file filep and returns a pointer to a
       structure containing the broken out fields from a line  in
       the  file.   The pointer points to a static area of memory
       which is overwritten by subsequent calls to getmntent().

       The addmntent() function adds the mntent structure mnt  to
       the end of the open file filep.

       The  endmntent()  function closes the file system descrip­
       tion file filep.

       The hasmntopt() function scans  the  mnt_opts  field  (see
       below)  of  the  mntent structure mnt for a substring that
       matches opt.  See <mntent.h> for valid mount options.

       The mntent structure is defined in <mntent.h> as follows:

                      char    *mnt_fsname;    /* name of mounted file system */
                      char    *mnt_dir;       /* file system path prefix */
                      char    *mnt_type;      /* mount type (see mntent.h) */
                      char    *mnt_opts;      /* mount options (see mntent.h) */
                      int     mnt_freq;       /* dump frequency in days */
                      int     mnt_passno;     /* pass number on parallel fsck */


       The getmntent() function returns a pointer to  the  mntent
       structure or NULL on failure.

       The  addmntent()  function  returns  0 on success and 1 on

       The endmntent() function always returns 1.

       The hasmntopt() function returns the address of  the  sub­
       string if a match is found and NULL otherwise.


       /etc/fstab          file system description file
       /etc/mtab           mounted file system description file


       SunOS 4.1.3.


       SysV  also  has  a  getmntent()  function  but the calling
       sequence differs, and the returned structure is different.
       Under  SysV /etc/mnttab is used.  BSD 4.4 and Digital Unix
       have a routine getmntinfo(), a wrapper around  the  system
       call getfsstat().


       fopen(3), fstab(5)