summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorph10 <ph10@6239d852-aaf2-0410-a92c-79f79f948069>2017-06-17 15:36:22 +0000
committerph10 <ph10@6239d852-aaf2-0410-a92c-79f79f948069>2017-06-17 15:36:22 +0000
commit58663dddd0b40eda6a045423d5e0408e92acd055 (patch)
tree4ddbc9409d00e586dd9475381326ee6f38b06207
parentea4a2c853ff2e64acd2fabd6ac3efaaa31bcfdd3 (diff)
downloadpcre2-58663dddd0b40eda6a045423d5e0408e92acd055.tar.gz
Document configuration for SELinux execmem allocator and fix CMake usage.
git-svn-id: svn://vcs.exim.org/pcre2/code/trunk@833 6239d852-aaf2-0410-a92c-79f79f948069
-rw-r--r--CMakeLists.txt1
-rw-r--r--ChangeLog3
-rw-r--r--README7
-rw-r--r--config-cmake.h.in1
-rw-r--r--doc/pcre2build.323
5 files changed, 24 insertions, 11 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 956aa18..5ebe695 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -79,6 +79,7 @@
# 2016-10-07 PH added PCREGREP_MAX_BUFSIZE
# 2017-03-11 PH turned HEAP_MATCH_RECURSE into a NO-OP for 10.30
# 2017-04-08 PH added HEAP_LIMIT
+# 2017-06-15 ZH added SUPPORT_JIT_SEALLOC support
PROJECT(PCRE2 C)
diff --git a/ChangeLog b/ChangeLog
index 67f393c..2bb4e08 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -197,6 +197,9 @@ PCRE2_EXTRA_MATCH_WORD, and PCRE2_EXTRA_MATCH_LINE. This fixes two bugs:
(a) The -F option did not work for fixed strings containing \E.
(b) The -w option did not work for patterns with multiple branches.
+
+44. Added configuration options for the SELinux compatible execmem allocator in
+JIT.
Version 10.23 14-February-2017
diff --git a/README b/README
index 336f5d9..6bf5b46 100644
--- a/README
+++ b/README
@@ -171,7 +171,10 @@ library. They are also documented in the pcre2build man page.
give large performance improvements on certain platforms, add --enable-jit to
the "configure" command. This support is available only for certain hardware
architectures. If you try to enable it on an unsupported architecture, there
- will be a compile time error.
+ will be a compile time error. If you are running under SELinux you may also
+ want to add --enable-jit-sealloc, which enables the use of an execmem
+ allocator in JIT that is compatible with SELinux. This has no effect if JIT
+ is not enabled.
. If you do not want to make use of the default support for UTF-8 Unicode
character strings in the 8-bit library, UTF-16 Unicode character strings in
@@ -874,4 +877,4 @@ The distribution should contain the files listed below.
Philip Hazel
Email local part: ph10
Email domain: cam.ac.uk
-Last updated: 11 April 2017
+Last updated: 17 June 2017
diff --git a/config-cmake.h.in b/config-cmake.h.in
index d34cc33..9b4f15d 100644
--- a/config-cmake.h.in
+++ b/config-cmake.h.in
@@ -25,6 +25,7 @@
#cmakedefine SUPPORT_LIBZ 1
#cmakedefine SUPPORT_JIT 1
+#cmakedefine SLJIT_PROT_EXECUTABLE_ALLOCATOR 1
#cmakedefine SUPPORT_PCRE2GREP_JIT 1
#cmakedefine SUPPORT_UNICODE 1
#cmakedefine SUPPORT_VALGRIND 1
diff --git a/doc/pcre2build.3 b/doc/pcre2build.3
index bbf5466..8b081d9 100644
--- a/doc/pcre2build.3
+++ b/doc/pcre2build.3
@@ -1,4 +1,4 @@
-.TH PCRE2BUILD 3 "30 May 2017" "PCRE2 10.30"
+.TH PCRE2BUILD 3 "17 June 2017" "PCRE2 10.30"
.SH NAME
PCRE2 - Perl-compatible regular expressions (revised API)
.
@@ -156,8 +156,13 @@ Just-in-time (JIT) compiler support is included in the build by specifying
--enable-jit
.sp
This support is available only for certain hardware architectures. If this
-option is set for an unsupported architecture, a building error occurs.
-See the
+option is set for an unsupported architecture, a building error occurs. If you
+are running under SELinux you may also want to add
+.sp
+ --enable-jit-sealloc
+.sp
+which enables the use of an execmem allocator in JIT that is compatible with
+SELinux. This has no effect if JIT is not enabled. See the
.\" HREF
\fBpcre2jit\fP
.\"
@@ -273,7 +278,7 @@ documentation. The default limit (in effect unlimited) is 20 million. You can
change this by a setting such as
.sp
--with-heap-limit=500
-.sp
+.sp
which limits the amount of heap to 500 kilobytes. This limit applies only to
interpretive matching in pcre2_match(). It does not apply when JIT (which has
its own memory arrangements) is used, nor does it apply to
@@ -528,7 +533,7 @@ contains a single function called LLVMFuzzerTestOneInput() whose arguments are
a pointer to a string and the length of the string. When called, this function
tries to compile the string as a pattern, and if that succeeds, to match it.
This is done both with no options and with some random options bits that are
-generated from the string.
+generated from the string.
.P
Setting --enable-fuzz-support also causes a binary called \fBpcre2fuzzcheck\fP
to be created. This is normally run under valgrind or used when PCRE2 is
@@ -542,13 +547,13 @@ file are the test string.
.SH "OBSOLETE OPTION"
.rs
.sp
-In versions of PCRE2 prior to 10.30, there were two ways of handling
-backtracking in the \fBpcre2_match()\fP function. The default was to use the
+In versions of PCRE2 prior to 10.30, there were two ways of handling
+backtracking in the \fBpcre2_match()\fP function. The default was to use the
system stack, but if
.sp
--disable-stack-for-recursion
.sp
-was set, memory on the heap was used. From release 10.30 onwards this has
+was set, memory on the heap was used. From release 10.30 onwards this has
changed (the stack is no longer used) and this option now does nothing except
give a warning.
.
@@ -572,6 +577,6 @@ Cambridge, England.
.rs
.sp
.nf
-Last updated: 30 May 2017
+Last updated: 17 June 2017
Copyright (c) 1997-2017 University of Cambridge.
.fi