summaryrefslogtreecommitdiff
path: root/ext/mbstring
Commit message (Collapse)AuthorAgeFilesLines
* Fix bug #79037 (global buffer-overflow in `mbfl_filt_conv_big5_wchar`)Stanislav Malyshev2020-01-202-5/+22
|
* Fix #78609: mb_check_encoding() no longer supports stringable objectsChristoph M. Becker2019-09-302-20/+28
| | | | We apply type juggling for other types than array.
* Fix #78579: mb_decode_numericentity: args number inconsistencyChristoph M. Becker2019-09-211-0/+1
| | | | | | | | | mb_decode_numericentity() accepts a fourth optional parameter, which is unused, however. Since this parameter doesn't do any harm, and to avoid the small BC break, we're keeping this parameter for PHP 7, but adjust the arginfo. For PHP 8, we will remove this parameter.
* Merge branch 'PHP-7.1' into PHP-7.2Stanislav Malyshev2019-08-241-3/+3
|\ | | | | | | | | | | * PHP-7.1: Fix CVE-2019-13224: don't allow different encodings for onig_new_deluxe() set version for release
| * Fix CVE-2019-13224: don't allow different encodings for onig_new_deluxe()Stanislav Malyshev2019-08-241-3/+3
| | | | | | | | Backport from https://github.com/kkos/oniguruma/commit/0f7f61ed1b7b697e283e37bd2d731d0bd57adb55
* | Fix key leaks in mb_convert_encoding()Nikita Popov2019-04-122-4/+22
| |
* | Fixed SKIPIF when --disable-mbregex is usedMatteo Beccati2019-03-3018-15/+63
| |
* | Merge branch 'PHP-7.1' into PHP-7.2Stanislav Malyshev2019-03-287-17/+28
|\ \ | |/ | | | | | | | | | | * PHP-7.1: Validate subject encoding in mb_split and mb_ereg_match Validate pattern against mbregex encoding SQLite3: add DEFENSIVE config for SQLite >= 3.26.0 as a mitigation strategy against potential security flaws
| * Validate subject encoding in mb_split and mb_ereg_matchNikita Popov2019-03-272-5/+12
| | | | | | | | | | We were already validating the subject encoding in most functions, but not these two.
| * Validate pattern against mbregex encodingNikita Popov2019-03-276-15/+31
| | | | | | | | | | | | Oniguruma does not consistently perform this validation itself (at least on older versions), so make sure we check pattern encoding validity on the PHP side.
* | Fixed bug #77454Nikita Popov2019-01-142-6/+21
| |
* | cleanup mergeRemi Collet2019-01-081-1/+0
| |
* | Merge branch 'PHP-7.1' into PHP-7.2Stanislav Malyshev2019-01-065-2/+21
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | * PHP-7.1: Fix bug #77418 - Heap overflow in utf32be_mbc_to_code Add NEWS [ci skip] Add NEWS Fix more issues with encodilng length Fix #77270: imagecolormatch Out Of Bounds Write on Heap Fix bug #77380 (Global out of bounds read in xmlrpc base64 code) Fix bug #77371 (heap buffer overflow in mb regex functions - compile_string_node) Fix bug #77370 - check that we do not read past buffer end when parsing multibytes Fix #77269: Potential unsigned underflow in gdImageScale Fix bug #77247 (heap buffer overflow in phar_detect_phar_fname_ext) Fix bug #77242 (heap out of bounds read in xmlrpc_decode()) Regenerate certs for openssl tests
| * Merge branch 'PHP-5.6' into PHP-7.1Stanislav Malyshev2019-01-065-2/+21
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * PHP-5.6: Fix bug #77418 - Heap overflow in utf32be_mbc_to_code [ci skip] Add NEWS Fix more issues with encodilng length Fix #77270: imagecolormatch Out Of Bounds Write on Heap Fix bug #77380 (Global out of bounds read in xmlrpc base64 code) Fix bug #77371 (heap buffer overflow in mb regex functions - compile_string_node) Fix bug #77370 - check that we do not read past buffer end when parsing multibytes Fix #77269: Potential unsigned underflow in gdImageScale Fix bug #77247 (heap buffer overflow in phar_detect_phar_fname_ext) Fix bug #77242 (heap out of bounds read in xmlrpc_decode()) Regenerate certs for openssl tests
| | * Fix bug #77418 - Heap overflow in utf32be_mbc_to_codeStanislav Malyshev2019-01-065-2/+21
| | |
| | * Fix more issues with encodilng lengthStanislav Malyshev2019-01-066-14/+38
| | | | | | | | | | | | Should fix bug #77381, bug #77382, bug #77385, bug #77394.
| | * Fix bug #77371 (heap buffer overflow in mb regex functions - ↵Stanislav Malyshev2019-01-062-0/+11
| | | | | | | | | | | | compile_string_node)
| | * Fix bug #77370 - check that we do not read past buffer end when parsing ↵Stanislav Malyshev2019-01-062-0/+22
| | | | | | | | | | | | multibytes
| | * Patch from the upstream gitRemi Collet2017-07-051-1/+3
| | | | | | | | | | | | | | | | | | https://github.com/kkos/oniguruma/issues/60 (CVE-2017-9228) Thanks to Mamoru TASAKA <mtasaka@fedoraproject.org>
| | * Patch from the upstream gitRemi Collet2017-07-051-1/+8
| | | | | | | | | | | | | | | | | | | | | https://github.com/kkos/oniguruma/issues/59 (CVE-2017-9229) b690371bbf97794b4a1d3f295d4fb9a8b05d402d Modified for onig 5.9.6 Thanks to Mamoru TASAKA <mtasaka@fedoraproject.org>
| | * Patch from the upstream gitRemi Collet2017-07-051-0/+2
| | | | | | | | | | | | | | | | | | https://github.com/kkos/oniguruma/issues/58 (CVE-2017-9227) Thanks to Mamoru TASAKA <mtasaka@fedoraproject.org>
| | * Patch from the upstream gitRemi Collet2017-07-051-5/+0
| | | | | | | | | | | | | | | | | | https://github.com/kkos/oniguruma/issues/57 (CVE-2017-9224) Thanks to Mamoru TASAKA <mtasaka@fedoraproject.org>
| | * Patch from the upstream gitRemi Collet2017-07-051-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | https://github.com/kkos/oniguruma/issues/55 (CVE-2017-9226) b4bf968ad52afe14e60a2dc8a95d3555c543353a Modified for onig 5.9.6 f015fbdd95f76438cd86366467bb2b39870dd7c6 Modified for onig 5.9.6 Thanks to Mamoru TASAKA <mtasaka@fedoraproject.org>
* | | Fix tests - newer versions check UnicodeStanislav Malyshev2019-01-063-9/+15
| | |
* | | Merge branch 'PHP-7.1' into PHP-7.2Stanislav Malyshev2019-01-066-5/+62
|\ \ \ | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * PHP-7.1: Fix #77369 - memcpy with negative length via crafted DNS response Fix more issues with encodilng length Fix #77270: imagecolormatch Out Of Bounds Write on Heap Fix bug #77380 (Global out of bounds read in xmlrpc base64 code) Fix bug #77371 (heap buffer overflow in mb regex functions - compile_string_node) Fix bug #77370 - check that we do not read past buffer end when parsing multibytes Fix #77269: Potential unsigned underflow in gdImageScale Fix bug #77247 (heap buffer overflow in phar_detect_phar_fname_ext) Fix bug #77242 (heap out of bounds read in xmlrpc_decode()) Regenerate certs for openssl tests
| * | Fix more issues with encodilng lengthStanislav Malyshev2019-01-066-14/+38
| | | | | | | | | | | | Should fix bug #77381, bug #77382, bug #77385, bug #77394.
| * | Fix bug #77371 (heap buffer overflow in mb regex functions - ↵Stanislav Malyshev2019-01-062-0/+11
| | | | | | | | | | | | compile_string_node)
| * | Fix bug #77370 - check that we do not read past buffer end when parsing ↵Stanislav Malyshev2019-01-062-0/+22
| | | | | | | | | | | | multibytes
| * | Sync leading and final newlines in *.phpt sectionsPeter Kokot2018-10-15110-144/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds missing newlines, trims multiple redundant final newlines into a single one, and trims redundant leading newlines in all *.phpt sections. According to POSIX, a line is a sequence of zero or more non-' <newline>' characters plus a terminating '<newline>' character. [1] Files should normally have at least one final newline character. C89 [2] and later standards [3] mention a final newline: "A source file that is not empty shall end in a new-line character, which shall not be immediately preceded by a backslash character." Although it is not mandatory for all files to have a final newline fixed, a more consistent and homogeneous approach brings less of commit differences issues and a better development experience in certain text editors and IDEs. [1] http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_206 [2] https://port70.net/~nsz/c/c89/c89-draft.html#2.1.1.2 [3] https://port70.net/~nsz/c/c99/n1256.html#5.1.1.2
| * | Trim trailing whitespace in *.phptPeter Kokot2018-10-14183-505/+505
| | |
| * | Sync leading and final newlines in source code filesPeter Kokot2018-10-1483-140/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds missing newlines, trims multiple redundant final newlines into a single one, and trims redundant leading newlines. According to POSIX, a line is a sequence of zero or more non-' <newline>' characters plus a terminating '<newline>' character. [1] Files should normally have at least one final newline character. C89 [2] and later standards [3] mention a final newline: "A source file that is not empty shall end in a new-line character, which shall not be immediately preceded by a backslash character." Although it is not mandatory for all files to have a final newline fixed, a more consistent and homogeneous approach brings less of commit differences issues and a better development experience in certain text editors and IDEs. [1] http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_206 [2] https://port70.net/~nsz/c/c89/c89-draft.html#2.1.1.2 [3] https://port70.net/~nsz/c/c99/n1256.html#5.1.1.2
| * | Trim trailing whitespace in source code filesPeter Kokot2018-10-1315-89/+89
| | |
| * | Convert CRLF line endings to LFPeter Kokot2018-10-132-36/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch simplifies line endings tracked in the Git repository and syncs them to all include the LF style instead of the CRLF files. Newline characters: - LF (\n) (*nix and Mac) - CRLF (\r\n) (Windows) - CR (\r) (old Mac, obsolete) To see which line endings are in the index and in the working copy the following command can be used: `git ls-files --eol` Git additionally provides `.gitattributes` file to specify if some files need to have specific line endings on all platforms (either CRLF or LF). Changed files shouldn't cause issues on modern Windows platforms because also Git can do output conversion is core.autocrlf=true is set on Windows and use CRLF newlines in all files in the working tree. Unless CRLF files are tracked specifically, Git by default tracks all files in the index using LF newlines.
* | | Sync leading and final newlines in *.phpt sectionsPeter Kokot2018-10-15112-146/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds missing newlines, trims multiple redundant final newlines into a single one, and trims redundant leading newlines in all *.phpt sections. According to POSIX, a line is a sequence of zero or more non-' <newline>' characters plus a terminating '<newline>' character. [1] Files should normally have at least one final newline character. C89 [2] and later standards [3] mention a final newline: "A source file that is not empty shall end in a new-line character, which shall not be immediately preceded by a backslash character." Although it is not mandatory for all files to have a final newline fixed, a more consistent and homogeneous approach brings less of commit differences issues and a better development experience in certain text editors and IDEs. [1] http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_206 [2] https://port70.net/~nsz/c/c89/c89-draft.html#2.1.1.2 [3] https://port70.net/~nsz/c/c99/n1256.html#5.1.1.2
* | | Trim trailing whitespace in *.phptPeter Kokot2018-10-14186-509/+509
| | |
* | | Sync leading and final newlines in source code filesPeter Kokot2018-10-1483-140/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds missing newlines, trims multiple redundant final newlines into a single one, and trims redundant leading newlines. According to POSIX, a line is a sequence of zero or more non-' <newline>' characters plus a terminating '<newline>' character. [1] Files should normally have at least one final newline character. C89 [2] and later standards [3] mention a final newline: "A source file that is not empty shall end in a new-line character, which shall not be immediately preceded by a backslash character." Although it is not mandatory for all files to have a final newline fixed, a more consistent and homogeneous approach brings less of commit differences issues and a better development experience in certain text editors and IDEs. [1] http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_206 [2] https://port70.net/~nsz/c/c89/c89-draft.html#2.1.1.2 [3] https://port70.net/~nsz/c/c99/n1256.html#5.1.1.2
* | | Trim trailing whitespace in source code filesPeter Kokot2018-10-1314-89/+89
| | |
* | | Convert CRLF line endings to LFPeter Kokot2018-10-131-13/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch simplifies line endings tracked in the Git repository and syncs them to all include the LF style instead of the CRLF files. Newline characters: - LF (\n) (*nix and Mac) - CRLF (\r\n) (Windows) - CR (\r) (old Mac, obsolete) To see which line endings are in the index and in the working copy the following command can be used: `git ls-files --eol` Git additionally provides `.gitattributes` file to specify if some files need to have specific line endings on all platforms (either CRLF or LF). Changed files shouldn't cause issues on modern Windows platforms because also Git can do output conversion is core.autocrlf=true is set on Windows and use CRLF newlines in all files in the working tree. Unless CRLF files are tracked specifically, Git by default tracks all files in the index using LF newlines.
* | | Merge branch 'PHP-7.1' into PHP-7.2Christoph M. Becker2018-08-042-4/+20
|\ \ \ | |/ / | | | | | | | | | * PHP-7.1: Fix #76704: mb_detect_order return value varies based on argument type
| * | Fix #76704: mb_detect_order return value varies based on argument typeChristoph M. Becker2018-08-042-5/+21
| | | | | | | | | | | | | | | php_mb_parse_encoding_list() and php_mb_parse_encoding_array() are supposed to return SUCCESS and FAILURE, not 1 and 0, respectively.
* | | Merge branch 'PHP-7.1' into PHP-7.2Nikita Popov2018-06-283-1/+20
|\ \ \ | |/ /
| * | Fixed bug #76532 (excessive memory usage in mb_strimwidth)Marcus Schwarz2018-06-283-1/+20
| | |
* | | Merge branch 'PHP-7.1' into PHP-7.2Christoph M. Becker2018-03-201-1/+1
|\ \ \ | |/ / | | | | | | | | | * PHP-7.1: Fix #76113: mbstring does not build with Oniguruma 6.8.1
| * | Fix #76113: mbstring does not build with Oniguruma 6.8.1Christoph M. Becker2018-03-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | As of Oniguruma 6.8.1, the regex structure has been moved from the public `oniguruma.h` to the private `regint.h`. Thus, it is no longer possible to directly access the struct's members, and actually, there is no need to, since there are respective accessor functions available at least of 2.3.1.
* | | Merge branch 'PHP-7.1' into PHP-7.2Christoph M. Becker2018-03-192-1/+14
|\ \ \ | |/ / | | | | | | | | | * PHP-7.1: Fix #75944: Wrong cp1251 detection
| * | Fix #75944: Wrong cp1251 detectionChristoph M. Becker2018-03-192-1/+14
| | | | | | | | | | | | `\xFF` is a valid character of CP-1251.
* | | Merge branch 'PHP-7.1' into PHP-7.2Christoph M. Becker2018-03-113-5/+23
|\ \ \ | |/ / | | | | | | | | | * PHP-7.1: Fix #62545: wrong unicode mapping in some charsets
| * | Fix #62545: wrong unicode mapping in some charsetsChristoph M. Becker2018-03-113-5/+23
| | | | | | | | | | | | Undefined characters are best mapped to Unicode REPLACEMENT characters.
* | | Merge branch 'PHP-7.1' into PHP-7.2Xinchen Hui2018-01-031-1/+1
|\ \ \ | |/ / | | | | | | | | | * PHP-7.1: Happy new year (Update copyright to 2018)
| * | Happy new year (Update copyright to 2018)Lior Kaplan2018-01-021-1/+1
| | |