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 description
     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  description
     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:

          struct mntent {
                  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


     BSD 4.3


     fopen(3), fstab(5)