source: MondoRescue/branches/2.2.9/mindi-busybox/libbb/match_fstype.c@ 3320

Last change on this file since 3320 was 3320, checked in by Bruno Cornec, 9 years ago
  • Re-add (thanks git BTW) the 2.2.9 branch which had been destroyed in the move to 3.0
  • Property svn:eol-style set to native
File size: 829 bytes
Line 
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 source tree.
11 */
12
13#include "libbb.h"
14
15int 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}
Note: See TracBrowser for help on using the repository browser.