Magellan Linux

Contents of /trunk/mkinitrd-magellan/busybox/libbb/match_fstype.c

Parent Directory Parent Directory | Revision Log Revision Log


Revision 984 - (show annotations) (download)
Sun May 30 11:32:42 2010 UTC (13 years, 11 months ago) by niro
File MIME type: text/plain
File size: 837 byte(s)
-updated to busybox-1.16.1 and enabled blkid/uuid support in default config
1 /* vi: set sw=4 ts=4: */
2 /*
3 * Match fstypes for use in mount unmount
4 * We accept notmpfs,nfs but not notmpfs,nonfs
5 * This allows us to match fstypes that start with no like so
6 * mount -at ,noddy
7 *
8 * Returns 1 for a match, otherwise 0
9 *
10 * Licensed under GPLv2 or later, see file LICENSE in this tarball for details.
11 */
12
13 #include "libbb.h"
14
15 int FAST_FUNC match_fstype(const struct mntent *mt, const char *t_fstype)
16 {
17 int match = 1;
18 int len;
19
20 if (!t_fstype)
21 return match;
22
23 if (t_fstype[0] == 'n' && t_fstype[1] == 'o') {
24 match--;
25 t_fstype += 2;
26 }
27
28 len = strlen(mt->mnt_type);
29 while (1) {
30 if (strncmp(mt->mnt_type, t_fstype, len) == 0
31 && (t_fstype[len] == '\0' || t_fstype[len] == ',')
32 ) {
33 return match;
34 }
35 t_fstype = strchr(t_fstype, ',');
36 if (!t_fstype)
37 break;
38 t_fstype++;
39 }
40
41 return !match;
42 }