Commit Graph

150 Commits

Author SHA1 Message Date
ph10
d2b71afa21 Add callout_error to pcre2test and stop the fuzzer after 100 callouts. 2016-12-28 15:05:48 +00:00
ph10
678be8e934 Fix issue with \Q\E after a callout before an assertion condition. 2016-12-28 12:26:12 +00:00
ph10
968a4affbc Fail hyphen after POSIX character class. 2016-12-27 11:50:28 +00:00
ph10
3176355640 Fix mis-parsing of a conditional group with callout but a question mark where
the assertion should start.
2016-12-23 18:34:10 +00:00
ph10
c71c324992 More refactoring: keep track of empty branches during compiling, replacing a
post-compile scan.
2016-12-23 17:09:37 +00:00
ph10
513ffa6176 Fix incorrect internal error for very complicated back reference handling. 2016-12-20 16:47:41 +00:00
ph10
1d535a96d9 Fix \Q\E quantification bug. 2016-12-11 16:42:29 +00:00
ph10
bea0fcdfd8 Fix OOB error in substitute with start offset longer than length. 2016-12-09 18:19:38 +00:00
ph10
ac6a8e58cb Fix NULL defer in extended substition for \p, \P, or \X. 2016-12-09 16:57:51 +00:00
ph10
2c10ac4062 Fix buffer overflow in partial match test for CRLF in empty buffer. 2016-12-08 17:55:26 +00:00
ph10
3a1c44b95d Fix \Q...\E bug in (*VERB) name when PCRE2_ALT_VERBNAMES and PCRE2_AUTO_CALLOUT
were both specified.
2016-11-27 16:14:33 +00:00
ph10
b6fd463cad Quantifiers following (*VERB)s were not being diagnosed. 2016-11-25 10:37:23 +00:00
ph10
ace2993a31 Fix bad behaviour for subroutine call in lookbehind when the called subroutine
contained an option setting such as (?s) and PCRE2_ANCHORED was set.
2016-11-23 17:17:57 +00:00
ph10
12220c8b72 Fix overrun bug caused by conditional with assertion using too much memory. 2016-11-18 18:59:37 +00:00
ph10
e86513c76f Fix global overflow bug for get/copy names in pcre2test. 2016-11-10 17:08:27 +00:00
ph10
70f5077974 Test update. 2016-11-04 16:40:08 +00:00
ph10
68b57e736a Fix overrun for unterminated number after \g' 2016-11-04 11:05:21 +00:00
ph10
7bfc994cf8 Fix read beyond unterminated quantifier at end of pattern. 2016-11-01 12:12:45 +00:00
ph10
0b95c1b47c Fix bad memory calculation when the first branch of a lookbehind is of zero
length.
2016-10-28 16:09:08 +00:00
ph10
1d5d04b5e4 Diagnose an overall recursion (?0) inside a lookbehind as an error. 2016-10-23 17:05:09 +00:00
ph10
20d0109ed3 Fix optimization bugs when pattern starts with lookahead. 2016-10-18 11:22:40 +00:00
ph10
6703953f9f Add test for bug already fixed by the refactoring. 2016-10-13 16:08:08 +00:00
ph10
33f4845d6c Major refactoring of pcre2_compile.c; see ChangeLog and HACKING. 2016-10-02 16:01:01 +00:00
ph10
c8e722b99d Detect overflow in pcre2test pattern and subject repetition counts. 2016-07-06 08:42:50 +00:00
ph10
c3b2163321 Detect missing closing parentheses during the pre-pass. 2016-02-13 15:30:29 +00:00
ph10
0c70759be9 Fix pcre2test loop when a callout is in an initial lookbehind. 2016-02-06 16:40:59 +00:00
ph10
3d93c737c8 Detect unmatched closing parentheses in the pre-scan to avoid giving incorrect
error messages.
2016-02-02 17:22:55 +00:00
ph10
74a085802c Two pcre2test extensions: quoted literal substrings in hex patterns and
detection of unsupported binary zeros in file input.
2016-01-29 18:16:59 +00:00
ph10
9936504425 Fix printing of *MARK names containing binary zeroes in pcre2test. 2015-12-16 18:44:24 +00:00
ph10
42c40455d7 Some tests were in the wrong files. 2015-12-15 18:21:49 +00:00
ph10
203b6126ff Implement PCRE2_SUBSTITUTE_{OVERFLOW_LENGTH,UNKNOWN_UNSET}. 2015-12-12 18:45:40 +00:00
ph10
c5abfa13a3 Harden pcre2test against ridiculously large values in modifiers and command
line arguments.
2015-12-05 18:17:41 +00:00
ph10
90cb7c0d75 Implement PCRE2_SUBSTITUTE_UNSET_EMPTY. 2015-12-04 18:39:08 +00:00
ph10
2fb94fbefb Fix \) in (*verb) "name" bug. 2015-12-03 18:36:36 +00:00
ph10
21f39a6300 Fix /x bug when pattern starts with whitespace followed by (?-x). 2015-12-03 16:58:31 +00:00
ph10
58ab72f70b Fix issues with NULL characters in patterns. 2015-12-02 17:39:26 +00:00
ph10
396d7a6139 Fix extended *verb name ignored terminating whitespace bug. 2015-12-01 17:41:24 +00:00
ph10
70a8ef110a Fix empty \Q\E between an item and a qualifier in auto-callout mode. 2015-11-30 17:31:16 +00:00
ph10
055e6c2d56 Fix bad behaviour for isolated \E before qualifier with auto-callout. 2015-11-27 17:34:36 +00:00
ph10
2a47f4453f Fix auto-callout with (?# comment bug. 2015-11-25 18:46:35 +00:00
ph10
702c2433f8 Make startoffset a synonym of offset in pcre2test. 2015-11-21 16:10:24 +00:00
ph10
7a19cd2097 Fix single-character POSIX class bug in UCP mode. 2015-11-17 17:13:43 +00:00
zherczeg
e2ae62a7a9 Fix two offset_limit bug in JIT. 2015-11-16 08:30:48 +00:00
ph10
9790def8a5 Implement PCRE2_INFO_HASBACKSLASHC. 2015-11-14 17:28:19 +00:00
ph10
5580bac69f Add a new test. 2015-11-13 17:16:28 +00:00
ph10
2c76a4997d Don't split CRLF in pcre2_substitute() when it's a valid newline sequence. 2015-11-13 16:52:26 +00:00
ph10
961e72941b Don't use group caching when (?| is involved; instead use a counter to cap too
much computation.
2015-11-10 14:33:28 +00:00
ph10
6ce2ab6ce6 Cap minimum length at 65535 and check for integer overflow. 2015-11-09 18:45:15 +00:00
ph10
65cb917512 Use caching to improve could_be_empty() and find_fixed_length() compile times,
especially when recursion/subroutine calls are present.
2015-11-08 14:20:09 +00:00
ph10
5ca1010ab6 Implement pcre2_set_max_pattern_length() 2015-11-05 17:33:39 +00:00