[PATCH] Fix bug-regex4
Jakub Jelinek
jakub@redhat.com
Mon Apr 7 21:13:00 GMT 2003
Hi!
If range and/or stop arguments to re_search_2 are too large, re_search_2
might search beyond end of buffer.
2003-04-07 Jakub Jelinek <jakub@redhat.com>
* posix/bug-regex4.c (main): Cap range and stop arguments to
sum of size1 and size2 arguments.
--- libc/posix/bug-regex4.c.jj 2002-07-29 09:14:54.000000000 -0400
+++ libc/posix/bug-regex4.c 2003-04-07 17:04:31.000000000 -0400
@@ -43,9 +43,9 @@ main (void)
}
else
{
- match[0] = re_search_2 (®ex, "xyabez", 6, "", 0, 1, 9, NULL, 10);
+ match[0] = re_search_2 (®ex, "xyabez", 6, "", 0, 1, 5, NULL, 6);
match[1] = re_search_2 (®ex, NULL, 0, "abc", 3, 0, 3, NULL, 3);
- match[2] = re_search_2 (®ex, "xya", 3, "bd", 2, 2, 6, NULL, 8);
+ match[2] = re_search_2 (®ex, "xya", 3, "bd", 2, 2, 3, NULL, 5);
if (match[0] != 2 || match[1] != 0 || match[2] != 2)
{
printf ("re_search_2 returned %d,%d,%d, expected 2,0,2\n",
Jakub
More information about the Libc-hacker
mailing list