X-Git-Url: http://ftp.carnet.hr/carnet-debian/scm?p=ossec-hids.git;a=blobdiff_plain;f=src%2Fexternal%2Fpcre2-10.32%2Ftestdata%2Ftestoutput15;fp=src%2Fexternal%2Fpcre2-10.32%2Ftestdata%2Ftestoutput15;h=d09e781c627ad823dd0b92e79af4cc5def982d35;hp=0000000000000000000000000000000000000000;hb=3f728675941dc69d4e544d3a880a56240a6e394a;hpb=927951d1c1ad45ba9e7325f07d996154a91c911b diff --git a/src/external/pcre2-10.32/testdata/testoutput15 b/src/external/pcre2-10.32/testdata/testoutput15 new file mode 100644 index 0000000..d09e781 --- /dev/null +++ b/src/external/pcre2-10.32/testdata/testoutput15 @@ -0,0 +1,420 @@ +# These are: +# +# (1) Tests of the match-limiting features. The results are different for +# interpretive or JIT matching, so this test should not be run with JIT. The +# same tests are run using JIT in test 17. + +# (2) Other tests that must not be run with JIT. + +/(a+)*zz/I +Capturing subpattern count = 1 +Starting code units: a z +Last code unit = 'z' +Subject length lower bound = 2 + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazzbbbbbb\=find_limits +Minimum heap limit = 0 +Minimum match limit = 7 +Minimum depth limit = 7 + 0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazz + 1: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaz\=find_limits +Minimum heap limit = 0 +Minimum match limit = 20481 +Minimum depth limit = 30 +No match + +!((?:\s|//.*\\n|/[*](?:\\n|.)*?[*]/)*)!I +Capturing subpattern count = 1 +May match empty string +Subject length lower bound = 0 + /* this is a C style comment */\=find_limits +Minimum heap limit = 0 +Minimum match limit = 64 +Minimum depth limit = 7 + 0: /* this is a C style comment */ + 1: /* this is a C style comment */ + +/^(?>a)++/ + aa\=find_limits +Minimum heap limit = 0 +Minimum match limit = 5 +Minimum depth limit = 3 + 0: aa + aaaaaaaaa\=find_limits +Minimum heap limit = 0 +Minimum match limit = 12 +Minimum depth limit = 3 + 0: aaaaaaaaa + +/(a)(?1)++/ + aa\=find_limits +Minimum heap limit = 0 +Minimum match limit = 7 +Minimum depth limit = 5 + 0: aa + 1: a + aaaaaaaaa\=find_limits +Minimum heap limit = 0 +Minimum match limit = 21 +Minimum depth limit = 5 + 0: aaaaaaaaa + 1: a + +/a(?:.)*?a/ims + abbbbbbbbbbbbbbbbbbbbba\=find_limits +Minimum heap limit = 0 +Minimum match limit = 24 +Minimum depth limit = 3 + 0: abbbbbbbbbbbbbbbbbbbbba + +/a(?:.(*THEN))*?a/ims + abbbbbbbbbbbbbbbbbbbbba\=find_limits +Minimum heap limit = 0 +Minimum match limit = 66 +Minimum depth limit = 45 + 0: abbbbbbbbbbbbbbbbbbbbba + +/a(?:.(*THEN:ABC))*?a/ims + abbbbbbbbbbbbbbbbbbbbba\=find_limits +Minimum heap limit = 0 +Minimum match limit = 66 +Minimum depth limit = 45 + 0: abbbbbbbbbbbbbbbbbbbbba + +/^(?>a+)(?>b+)(?>c+)(?>d+)(?>e+)/ + aabbccddee\=find_limits +Minimum heap limit = 0 +Minimum match limit = 7 +Minimum depth limit = 7 + 0: aabbccddee + +/^(?>(a+))(?>(b+))(?>(c+))(?>(d+))(?>(e+))/ + aabbccddee\=find_limits +Minimum heap limit = 0 +Minimum match limit = 12 +Minimum depth limit = 12 + 0: aabbccddee + 1: aa + 2: bb + 3: cc + 4: dd + 5: ee + +/^(?>(a+))(?>b+)(?>(c+))(?>d+)(?>(e+))/ + aabbccddee\=find_limits +Minimum heap limit = 0 +Minimum match limit = 10 +Minimum depth limit = 10 + 0: aabbccddee + 1: aa + 2: cc + 3: ee + +/(*LIMIT_MATCH=12bc)abc/ +Failed: error 160 at offset 17: (*VERB) not recognized or malformed + +/(*LIMIT_MATCH=4294967290)abc/ +Failed: error 160 at offset 24: (*VERB) not recognized or malformed + +/(*LIMIT_DEPTH=4294967280)abc/I +Capturing subpattern count = 0 +Depth limit = 4294967280 +First code unit = 'a' +Last code unit = 'c' +Subject length lower bound = 3 + +/(a+)*zz/ +\= Expect no match + aaaaaaaaaaaaaz +No match +\= Expect limit exceeded + aaaaaaaaaaaaaz\=match_limit=3000 +Failed: error -47: match limit exceeded + +/(a+)*zz/ +\= Expect limit exceeded + aaaaaaaaaaaaaz\=depth_limit=10 +Failed: error -53: matching depth limit exceeded + +/(*LIMIT_MATCH=3000)(a+)*zz/I +Capturing subpattern count = 1 +Match limit = 3000 +Starting code units: a z +Last code unit = 'z' +Subject length lower bound = 2 +\= Expect limit exceeded + aaaaaaaaaaaaaz +Failed: error -47: match limit exceeded +\= Expect limit exceeded + aaaaaaaaaaaaaz\=match_limit=60000 +Failed: error -47: match limit exceeded + +/(*LIMIT_MATCH=60000)(*LIMIT_MATCH=3000)(a+)*zz/I +Capturing subpattern count = 1 +Match limit = 3000 +Starting code units: a z +Last code unit = 'z' +Subject length lower bound = 2 +\= Expect limit exceeded + aaaaaaaaaaaaaz +Failed: error -47: match limit exceeded + +/(*LIMIT_MATCH=60000)(a+)*zz/I +Capturing subpattern count = 1 +Match limit = 60000 +Starting code units: a z +Last code unit = 'z' +Subject length lower bound = 2 +\= Expect no match + aaaaaaaaaaaaaz +No match +\= Expect limit exceeded + aaaaaaaaaaaaaz\=match_limit=3000 +Failed: error -47: match limit exceeded + +/(*LIMIT_DEPTH=10)(a+)*zz/I +Capturing subpattern count = 1 +Depth limit = 10 +Starting code units: a z +Last code unit = 'z' +Subject length lower bound = 2 +\= Expect limit exceeded + aaaaaaaaaaaaaz +Failed: error -53: matching depth limit exceeded +\= Expect limit exceeded + aaaaaaaaaaaaaz\=depth_limit=1000 +Failed: error -53: matching depth limit exceeded + +/(*LIMIT_DEPTH=10)(*LIMIT_DEPTH=1000)(a+)*zz/I +Capturing subpattern count = 1 +Depth limit = 1000 +Starting code units: a z +Last code unit = 'z' +Subject length lower bound = 2 +\= Expect no match + aaaaaaaaaaaaaz +No match + +/(*LIMIT_DEPTH=1000)(a+)*zz/I +Capturing subpattern count = 1 +Depth limit = 1000 +Starting code units: a z +Last code unit = 'z' +Subject length lower bound = 2 +\= Expect no match + aaaaaaaaaaaaaz +No match +\= Expect limit exceeded + aaaaaaaaaaaaaz\=depth_limit=10 +Failed: error -53: matching depth limit exceeded + +# These three have infinitely nested recursions. + +/((?2))((?1))/ + abc +Failed: error -52: nested recursion at the same subject position + +/((?(R2)a+|(?1)b))()/ + aaaabcde +Failed: error -52: nested recursion at the same subject position + +/(?(R)a*(?1)|((?R))b)/ + aaaabcde +Failed: error -52: nested recursion at the same subject position + +# The allusedtext modifier does not work with JIT, which does not maintain +# the leftchar/rightchar data. + +/abc(?=xyz)/allusedtext + abcxyzpqr + 0: abcxyz + >>> + abcxyzpqr\=aftertext + 0: abcxyz + >>> + 0+ xyzpqr + +/(?<=pqr)abc(?=xyz)/allusedtext + xyzpqrabcxyzpqr + 0: pqrabcxyz + <<< >>> + xyzpqrabcxyzpqr\=aftertext + 0: pqrabcxyz + <<< >>> + 0+ xyzpqr + +/a\b/ + a.\=allusedtext + 0: a. + > + a\=allusedtext + 0: a + +/abc\Kxyz/ + abcxyz\=allusedtext + 0: abcxyz + <<< + +/abc(?=xyz(*ACCEPT))/ + abcxyz\=allusedtext + 0: abcxyz + >>> + +/abc(?=abcde)(?=ab)/allusedtext + abcabcdefg + 0: abcabcde + >>>>> + +# These tests provoke recursion loops, which give a different error message +# when JIT is used. + +/(?R)/I +Capturing subpattern count = 0 +May match empty string +Subject length lower bound = 0 + abcd +Failed: error -52: nested recursion at the same subject position + +/(a|(?R))/I +Capturing subpattern count = 1 +May match empty string +Subject length lower bound = 0 + abcd + 0: a + 1: a + defg +Failed: error -52: nested recursion at the same subject position + +/(ab|(bc|(de|(?R))))/I +Capturing subpattern count = 3 +May match empty string +Subject length lower bound = 0 + abcd + 0: ab + 1: ab + fghi +Failed: error -52: nested recursion at the same subject position + +/(ab|(bc|(de|(?1))))/I +Capturing subpattern count = 3 +May match empty string +Subject length lower bound = 0 + abcd + 0: ab + 1: ab + fghi +Failed: error -52: nested recursion at the same subject position + +/x(ab|(bc|(de|(?1)x)x)x)/I +Capturing subpattern count = 3 +First code unit = 'x' +Subject length lower bound = 3 + xab123 + 0: xab + 1: ab + xfghi +Failed: error -52: nested recursion at the same subject position + +/(?!\w)(?R)/ + abcd +Failed: error -52: nested recursion at the same subject position + =abc +Failed: error -52: nested recursion at the same subject position + +/(?=\w)(?R)/ + =abc +Failed: error -52: nested recursion at the same subject position + abcd +Failed: error -52: nested recursion at the same subject position + +/(?abc + 1 ^ ^ End of pattern + 1 ^ ^ End of pattern + 1 ^^ End of pattern + 1 ^ ^ End of pattern + 1 ^^ End of pattern + 1 ^^ End of pattern +No match + +/(*NO_AUTO_POSSESS)\w+(?C1)/BI +------------------------------------------------------------------ + Bra + \w+ + Callout 1 26 0 + Ket + End +------------------------------------------------------------------ +Capturing subpattern count = 0 +Compile options: +Overall options: no_auto_possess +Starting code units: 0 1 2 3 4 5 6 7 8 9 A B C D E F G H I J K L M N O P + Q R S T U V W X Y Z _ a b c d e f g h i j k l m n o p q r s t u v w x y z +Subject length lower bound = 1 + abc\=callout_fail=1 +--->abc + 1 ^ ^ End of pattern + 1 ^ ^ End of pattern + 1 ^^ End of pattern + 1 ^ ^ End of pattern + 1 ^^ End of pattern + 1 ^^ End of pattern +No match + +# This test breaks the JIT stack limit + +/(|]+){2,2452}/ + (|]+){2,2452} + 0: + 1: + +/(*LIMIT_HEAP=21)\[(a)]{60}/expand + \[a]{60} +Failed: error -63: heap limit exceeded + +# End of testinput15