Open p5pRT opened 5 years ago
While fuzzing perl v5.29.10-23-g7c0d7520a3 built with afl and run under libdislocator\, I found the following program
use utf8; eval"\320\200 f'\r\r0'=~'\\R??\r0'"
to cause an assertion failure
perl: regexec.c:6493: S_regmatch: Assertion `n == REG_INFTY || locinput == li' failed.
GDB stack trace is following
#0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
#1 0x00007ffff7c48535 in __GI_abort () at abort.c:79
#2 0x00007ffff7c4840f in __assert_fail_base (fmt=0x7ffff7daaee0
"%s%s%s:%u: %s%sAssertion `%s' failed.\n%n"\,
assertion=0x555555796fc0 "n == REG_INFTY || locinput == li"\,
file=0x555555795f88 "regexec.c"\, line=6493\, function=\
This is a regression between 5.18 and 5.20\, bisect points to
commit b24b43f7631ee39f0260fc7bba01dd65715f5aff (HEAD\, refs/bisect/bad) Author: Karl Williamson \public@​khwilliamson\.com Date: Mon Jan 6 13:41:46 2014 -0700
IDStart and IDCont no longer go out to disk
These are the base names for various macros used in parsing identifiers. Prior to this patch\, parsing a code point above Latin1 caused loading disk files. This patch causes all the information to be compiled into the Perl binary.
Migrated from rt.perl.org#134083 (status was 'new')
Searchable as RT134083$