#include <stdio.h> #include <mntent.h> FILE *setmntent(filep, type) char *filep; char *type; struct mntent *getmntent(filep) FILE *filep; int addmntent(filep, mnt) FILE *filep; struct mntent *mnt; char *hasmntopt(mnt, opt) struct mntent *mnt; char *opt; int endmntent(filep) FILE *filep;
These routines replace the getfsent() routines for accessing the file system description file /etc/fstab. They are also used to access the mounted file system description file /etc/mtab.
setmntent() opens a file system description file and returns a file pointer which can then be used with getmntent, addmntent, or endmntent. The type argument is the same as in fopen.3v getmntent() reads the next line from filep and returns a pointer to an object with the following structure containing the broken-out fields of a line in the file system description file, <mntent.h>. On failure, getmntent() returns the NULL pointer. The fields have meanings described in fstab.5
struct mntent{ char *mnt_fsname; /* name of mounted file system */ char *mnt_dir; /* file system path prefix */ char *mnt_type; /* MNTTYPE_* */ char *mnt_opts; /* MNTOPT* */ int mnt_freq; /* dump frequency, in days */ int mnt_passno; /* pass number on parallel fsck */ };
addmntent() adds the mntent structure mnt to the end of the open file filep. addmntent( ) returns 0 on success, 1 on failure. Note: filep has to be opened for writing if this is to work. hasmntopt() scans the mnt_opts field of the mntent structure mnt for a substring that matches opt. It returns the address of the substring if a match is found, 0 otherwise. endmntent( ) closes the file. It always returns 1, so should be treated as type void.
NULL pointer (0) returned on EOF or error.
The returned mntent structure points to static information that is overwritten in each call.
Created by unroff & hp-tools. © somebody (See intro for details). All Rights Reserved. Last modified 11/5/97