aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/pcre.scm
diff options
context:
space:
mode:
authorTobias Geerinckx-Rice <me@tobias.gr>2019-08-01 21:57:45 +0200
committerTobias Geerinckx-Rice <me@tobias.gr>2019-08-02 01:49:47 +0200
commit951fd8572af1bd00064d5c0ae59c2927ec1b6ba5 (patch)
treea8f630aa7d803029e1f13a35b6f8201fe1535b32 /gnu/packages/pcre.scm
parent9b76aa1031e078f273633cc4f59d4641b9f5332f (diff)
downloadguix-951fd8572af1bd00064d5c0ae59c2927ec1b6ba5.tar
guix-951fd8572af1bd00064d5c0ae59c2927ec1b6ba5.tar.gz
gnu: pcre@2: Fix run-time crash [security fix].
* gnu/packages/pcre.scm (pcre2)[replacement]: New field. (pcre2/fixed): New public variable. * packages/patches/pcre2-fix-jit_match-crash.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it.
Diffstat (limited to 'gnu/packages/pcre.scm')
-rw-r--r--gnu/packages/pcre.scm12
1 files changed, 12 insertions, 0 deletions
diff --git a/gnu/packages/pcre.scm b/gnu/packages/pcre.scm
index 1395a3ea40..7385c78b9f 100644
--- a/gnu/packages/pcre.scm
+++ b/gnu/packages/pcre.scm
@@ -89,6 +89,7 @@ POSIX regular expression API.")
(define-public pcre2
(package
(name "pcre2")
+ (replacement pcre2/fixed)
(version "10.33")
(source (origin
(method url-fetch)
@@ -125,3 +126,14 @@ own native API, as well as a set of wrapper functions that correspond to the
POSIX regular expression API.")
(license license:bsd-3)
(home-page "https://www.pcre.org/")))
+
+(define-public pcre2/fixed
+ ;; PHP >= 7.3.8 requires a fixed version at build time, so make it public
+ ;; and hide it in the UI.
+ (package
+ (inherit pcre2)
+ (source
+ (origin
+ (inherit (package-source pcre2))
+ (patches (search-patches "pcre2-fix-jit_match-crash.patch"))))
+ (properties '((hidden? . #t)))))