diff options
Diffstat (limited to 'doc/html/pcre2serialize.html')
-rw-r--r-- | doc/html/pcre2serialize.html | 40 |
1 files changed, 25 insertions, 15 deletions
diff --git a/doc/html/pcre2serialize.html b/doc/html/pcre2serialize.html index 3747c0a..edf415a 100644 --- a/doc/html/pcre2serialize.html +++ b/doc/html/pcre2serialize.html @@ -14,10 +14,11 @@ please consult the man page, in case the conversion went wrong. <br> <ul> <li><a name="TOC1" href="#SEC1">SAVING AND RE-USING PRECOMPILED PCRE2 PATTERNS</a> -<li><a name="TOC2" href="#SEC2">SAVING COMPILED PATTERNS</a> -<li><a name="TOC3" href="#SEC3">RE-USING PRECOMPILED PATTERNS</a> -<li><a name="TOC4" href="#SEC4">AUTHOR</a> -<li><a name="TOC5" href="#SEC5">REVISION</a> +<li><a name="TOC2" href="#SEC2">SECURITY CONCERNS</a> +<li><a name="TOC3" href="#SEC3">SAVING COMPILED PATTERNS</a> +<li><a name="TOC4" href="#SEC4">RE-USING PRECOMPILED PATTERNS</a> +<li><a name="TOC5" href="#SEC5">AUTHOR</a> +<li><a name="TOC6" href="#SEC6">REVISION</a> </ul> <br><a name="SEC1" href="#TOC1">SAVING AND RE-USING PRECOMPILED PCRE2 PATTERNS</a><br> <P> @@ -48,7 +49,15 @@ and PCRE2_SIZE type. For example, patterns compiled on a 32-bit system using PCRE2's 16-bit library cannot be reloaded on a 64-bit system, nor can they be reloaded using the 8-bit library. </P> -<br><a name="SEC2" href="#TOC1">SAVING COMPILED PATTERNS</a><br> +<br><a name="SEC2" href="#TOC1">SECURITY CONCERNS</a><br> +<P> +The facility for saving and restoring compiled patterns is intended for use +within individual applications. As such, the data supplied to +<b>pcre2_serialize_decode()</b> is expected to be trusted data, not data from +arbitrary external sources. There is only some simple consistency checking, not +complete validation of what is being re-loaded. +</P> +<br><a name="SEC3" href="#TOC1">SAVING COMPILED PATTERNS</a><br> <P> Before compiled patterns can be saved they must be serialized, that is, converted to a stream of bytes. A single byte stream may contain any number of @@ -110,7 +119,7 @@ still be used for matching. Their memory must eventually be freed in the usual way by calling <b>pcre2_code_free()</b>. When you have finished with the byte stream, it too must be freed by calling <b>pcre2_serialize_free()</b>. </P> -<br><a name="SEC3" href="#TOC1">RE-USING PRECOMPILED PATTERNS</a><br> +<br><a name="SEC4" href="#TOC1">RE-USING PRECOMPILED PATTERNS</a><br> <P> In order to re-use a set of saved patterns you must first make the serialized byte stream available in main memory (for example, by reading from a file). The @@ -142,11 +151,12 @@ is filled with those that fit, and the remainder are ignored. The yield of the function is the number of decoded patterns, or one of the following negative error codes: <pre> - PCRE2_ERROR_BADDATA second argument is zero or less - PCRE2_ERROR_BADMAGIC mismatch of id bytes in the data - PCRE2_ERROR_BADMODE mismatch of variable unit size or PCRE2 version - PCRE2_ERROR_MEMORY memory allocation failed - PCRE2_ERROR_NULL first or third argument is NULL + PCRE2_ERROR_BADDATA second argument is zero or less + PCRE2_ERROR_BADMAGIC mismatch of id bytes in the data + PCRE2_ERROR_BADMODE mismatch of code unit size or PCRE2 version + PCRE2_ERROR_BADSERIALIZEDDATA other sanity check failure + PCRE2_ERROR_MEMORY memory allocation failed + PCRE2_ERROR_NULL first or third argument is NULL </pre> PCRE2_ERROR_BADMAGIC may mean that the data is corrupt, or that it was compiled on a system with different endianness. @@ -169,7 +179,7 @@ serialized, the JIT data is discarded and so is no longer available after a save/restore cycle. You can, however, process a restored pattern with <b>pcre2_jit_compile()</b> if you wish. </P> -<br><a name="SEC4" href="#TOC1">AUTHOR</a><br> +<br><a name="SEC5" href="#TOC1">AUTHOR</a><br> <P> Philip Hazel <br> @@ -178,11 +188,11 @@ University Computing Service Cambridge, England. <br> </P> -<br><a name="SEC5" href="#TOC1">REVISION</a><br> +<br><a name="SEC6" href="#TOC1">REVISION</a><br> <P> -Last updated: 03 November 2015 +Last updated: 24 May 2016 <br> -Copyright © 1997-2015 University of Cambridge. +Copyright © 1997-2016 University of Cambridge. <br> <p> Return to the <a href="index.html">PCRE2 index page</a>. |