summaryrefslogtreecommitdiff
path: root/misc
diff options
context:
space:
mode:
authorTheodore Ts'o <tytso@mit.edu>2007-12-16 15:41:15 -0500
committerTheodore Ts'o <tytso@mit.edu>2007-12-16 15:41:15 -0500
commit5221837e62641958f237e7fb5dee999cbfc850c9 (patch)
tree2984b3638e7daa7a8ec94d9f8d0d145d2e5fc208 /misc
parentf8efcda2db612f6b6d33dc1a6ff78a1c048608f4 (diff)
downloade2fsprogs-5221837e62641958f237e7fb5dee999cbfc850c9.tar.gz
fsck: '#' is only a comment character at the beginning of an fstab line
Fuse and ssh fstab lines such as: wdfs#https://dav.hoster.com/foo/bar /mnt/hoster fuse user,noauto 0 0 will cause fsck to issue warnings about invalid fstab lines, because fsck was previously treating '#' as a comment when it appeared anywhere in an fstab line, not just at the beginning of the line. Addresses-Gentoo-bug: #195405 Addresses-Sourceforge-bug: #1826147 Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Diffstat (limited to 'misc')
-rw-r--r--misc/fsck.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/misc/fsck.c b/misc/fsck.c
index 108adf66..5cf1a1c8 100644
--- a/misc/fsck.c
+++ b/misc/fsck.c
@@ -275,20 +275,17 @@ static int parse_fstab_line(char *line, struct fs_info **ret_fs)
*ret_fs = 0;
strip_line(line);
- if ((cp = strchr(line, '#')))
- *cp = 0; /* Ignore everything after the comment char */
cp = line;
device = parse_word(&cp);
+ if (!device || *device == '#')
+ return 0; /* Ignore blank lines and comments */
mntpnt = parse_word(&cp);
type = parse_word(&cp);
opts = parse_word(&cp);
freq = parse_word(&cp);
passno = parse_word(&cp);
- if (!device)
- return 0; /* Allow blank lines */
-
if (!mntpnt || !type)
return -1;