[PATCH] [BZ 17273] fix incorrect mount table entry parsing in __getmntent_r()
Vladimir A. Nazarenko
naszar@ya.ru
Sat Aug 30 04:07:00 GMT 2014
On 30.08.2014 08:58, Roland McGrath wrote:
> Please write a test case.
>
Can I modify existing test or I must create new one? Is following patch OK?
Can I resend fixed patch and test case as *one* patch?
>
> This should look like:
>
how about that:
[BZ #17273]
* misc/mntent_r.c (__getmntent_r): cut off trailing spaces
and tabs from bufer before parsing fstab entry.
* misc/tst-mntent.c(main): add test for mount entry with
trailing spaces and tabs.
---
diff --git a/misc/tst-mntent.c b/misc/tst-mntent.c
index 802b56e..f568ba8 100644
--- a/misc/tst-mntent.c
+++ b/misc/tst-mntent.c
@@ -73,7 +73,21 @@ main (int argc, char *argv[])
puts ("Error while reading written entry back in");
result = 1;
}
- }
+
+ /*part III: test if entry with trailing whitespaces*/
+ fputs("/foo\\040dir /bar\\040dir auto bind \t \n", fp);
+
+ rewind (fp);
+
+ mnt = getmntent(fp);
+ mnt = getmntent(fp);
+ if (mnt->mnt_freq != 0 || mnt->mnt_passno != 0)
+ {
+ printf("Error mnt_freq = %d and mnt_opts = %d, but zero expected\n",
+ mnt->mnt_freq, mnt->mnt_passno);
+ result = 1;
+ }
+ }
return result;
}
More information about the Libc-alpha
mailing list