Fix parsing a denominator when parsing a Unicode property name

This commit is contained in:
Petr Písař 2019-08-22 11:27:20 +02:00
parent 9eebde9ae4
commit 5d1cb4af5a
2 changed files with 43 additions and 0 deletions

View File

@ -0,0 +1,36 @@
From 31532982b04c20a43aa9c3d26780e3591c524fbc Mon Sep 17 00:00:00 2001
From: Karl Williamson <khw@cpan.org>
Date: Thu, 27 Jun 2019 15:39:11 -0600
Subject: [PATCH] regcomp.c: Don't read off the end of buffer
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Until this commit, it was possible that \p{nv=3/} would cause the right
brace to be considered part of the property name.
Spotted by Hugo van der Sanden
Signed-off-by: Petr Písař <ppisar@redhat.com>
---
regcomp.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/regcomp.c b/regcomp.c
index 1117998fc8..cf9246473f 100644
--- a/regcomp.c
+++ b/regcomp.c
@@ -23092,7 +23092,9 @@ Perl_parse_uniprop_string(pTHX_
}
/* Store the first real character in the denominator */
- lookup_name[j++] = name[i];
+ if (i < name_len) {
+ lookup_name[j++] = name[i];
+ }
}
}
--
2.21.0

View File

@ -253,6 +253,10 @@ Patch49: perl-5.31.2-PerlIO-Via-check-arg-is-non-NULL-before-using-it.pat
# fixed after 5.31.2
Patch50: perl-5.30.0-perl-134266-make-sure-is-writable-when-we-write-to-i.patch
# Fix parsing a denominator when parsing a Unicode property name,
# fixed after 5.31.2
Patch51: perl-5.31.2-regcomp.c-Don-t-read-off-the-end-of-buffer.patch
# Link XS modules to libperl.so with EU::CBuilder on Linux, bug #960048
Patch200: perl-5.16.3-Link-XS-modules-to-libperl.so-with-EU-CBuilder-on-Li.patch
@ -2825,6 +2829,7 @@ Perl extension for Version Objects
%patch48 -p1
%patch49 -p1
%patch50 -p1
%patch51 -p1
%patch200 -p1
%patch201 -p1
@ -2882,6 +2887,7 @@ perl -x patchlevel.h \
'Fedora Patch48: Fix a use after free in debugging output of a collation' \
'Fedora Patch49: Fix a NULL pointer dereference in PerlIOVia_pushed()' \
'Fedora Patch50: Fix a crash when setting $@ on unwinding a call stack (RT#134266)' \
'Fedora Patch51: Fix parsing a denominator when parsing a Unicode property name' \
'Fedora Patch200: Link XS modules to libperl.so with EU::CBuilder on Linux' \
'Fedora Patch201: Link XS modules to libperl.so with EU::MM on Linux' \
%{nil}
@ -5130,6 +5136,7 @@ popd
* Thu Aug 22 2019 Petr Pisar <ppisar@redhat.com> - 4:5.30.0-444
- Fix a NULL pointer dereference in PerlIOVia_pushed()
- Fix a crash when setting $@ on unwinding a call stack (RT#134266)
- Fix parsing a denominator when parsing a Unicode property name
* Wed Aug 07 2019 Petr Pisar <ppisar@redhat.com> - 4:5.30.0-443
- Fix propagating non-string variables in an exception value (RT#134291)