mntinfo
findmnt(struct stat *filest, struct mntinfo *mntinfo)
struct mntinfo *mi;
for (mi = mntinfo; mi; mi = mi->mi_nxt) {
isdupmnt(mntent_t *mnt, struct mntinfo *mntinfo)
struct mntinfo *m;
for (m = mntinfo; m; m = m->mi_nxt)
struct mntinfo *
makemntinfo(struct mntinfo *mi)
static struct mntinfo *mntinfo;
struct mntinfo *newmi, *m;
mntinfo = mi;
if (isdupmnt(mnt, mntinfo))
if (mntinfo) {
for (m = mntinfo; m->mi_nxt; m = m->mi_nxt)
mntinfo = newmi;
return(mntinfo);
static struct mntinfo *mntinfo = NULL;
struct mntinfo *tmpmi;
if (!mntinfo)
mntinfo = makemntinfo(NULL);
if ((mnt = findmnt(pstat, mntinfo)) != NULL)
if ((tmpmi = makemntinfo(mntinfo)) != NULL) {
mntinfo = tmpmi;
if ((mnt = findmnt(pstat, mntinfo)) != NULL)
struct mntinfo *mi_nxt;
mntent_t *findmnt(struct stat *, struct mntinfo *);
int isdupmnt(mntent_t *, struct mntinfo *);
struct mntinfo *makemntinfo(struct mntinfo *);