From f15aa3a552022743398a652165d76bf912c715e5 Mon Sep 17 00:00:00 2001 From: Guillaume Cottenceau Date: Mon, 14 May 2001 13:47:49 +0000 Subject: Initial revision --- mdk-stage1/dietlibc/libugly/getmntent.c | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 mdk-stage1/dietlibc/libugly/getmntent.c (limited to 'mdk-stage1/dietlibc/libugly/getmntent.c') diff --git a/mdk-stage1/dietlibc/libugly/getmntent.c b/mdk-stage1/dietlibc/libugly/getmntent.c new file mode 100644 index 000000000..250a77b7f --- /dev/null +++ b/mdk-stage1/dietlibc/libugly/getmntent.c @@ -0,0 +1,30 @@ +#include +#include +#include +#include + +struct mntent *getmntent(FILE *filep) { + static struct mntent m; + char buf[1024]; + do { + char *tmp=buf; + int num; + fgets(buf,1024,filep); +/* "/dev/ide/host0/bus0/target0/lun0/part2 / reiserfs defaults 1 1" */ + for (num=0; num<6; ++num) { + switch (num) { + case 0: m.mnt_fsname=tmp; break; + case 1: m.mnt_dir=tmp; break; + case 2: m.mnt_type=tmp; break; + case 3: m.mnt_opts=tmp; break; + case 4: m.mnt_freq=strtol(tmp,&tmp,0); if (*tmp!=' ') continue; break; + case 5: m.mnt_passno=strtol(tmp,&tmp,0); if (*tmp=='\n') return &m; break; + } + if ((tmp=strchr(tmp,' '))) { + if (num<4) *tmp++=0; + while (*tmp==' ') ++tmp; + } else + continue; + } + } while (1); +} -- cgit v1.2.1