This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] [BZ 17273] fix incorrect mount table entry parsing in __getmntent_r()


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;
 }


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]