From: Ulrich Drepper Date: Sun, 23 Aug 2009 22:22:00 +0000 (-0700) Subject: Recognize ill-formed { } expressions in regcomp. X-Git-Tag: fedora/glibc-2.10.90-15~1^2~2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=52db8039f54672abe6a6da5fb107fa52aca42547;p=thirdparty%2Fglibc.git Recognize ill-formed { } expressions in regcomp. --- diff --git a/ChangeLog b/ChangeLog index a42e20b0bed..37cd868c192 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2009-08-23 Ulrich Drepper + * posix/regcomp.c (parse_dup_op): Verify the expression is correctly + terminated. + * posix/unistd.h: Define _POSIX_VERSION and _POSIX2_* correctly if older POSIX versions are selected. diff --git a/posix/regcomp.c b/posix/regcomp.c index 4843cfea339..446fed54458 100644 --- a/posix/regcomp.c +++ b/posix/regcomp.c @@ -2481,7 +2481,7 @@ parse_dup_op (bin_tree_t *elem, re_string_t *regexp, re_dfa_t *dfa, return elem; } - if (BE (end != -1 && start > end, 0)) + if (BE ((end != -1 && start > end) || token->type != OP_CLOSE_DUP_NUM, 0)) { /* First number greater than second. */ *err = REG_BADBR;