summaryrefslogtreecommitdiff
path: root/ext/xmlrpc/libxmlrpc
Commit message (Collapse)AuthorAgeFilesLines
* Unbundle ext/xmlrpcChristoph M. Becker2020-05-2925-9186/+0
| | | | | According to <https://wiki.php.net/rfc/unbundle_xmlprc> we unbundle ext/xmlrpc.
* Fix #78880: Final spelling fixesMáté Kocsis2020-01-161-1/+1
|
* Fix incorrect enum value uses in xmlrpcNikita Popov2019-06-121-2/+2
|
* [ci skip] Migrate libxmlrpc README to MarkdownPeter Kokot2019-05-122-12/+21
|
* Simplify libxmlrpc bundling and buildingPeter Kokot2019-04-232-22/+0
| | | | | | | | | | | | | | | | | | | The xmlrpc library is a forked, modified and bundled into the PHP source code. Instead of having a separate *nix build system files in the xmlrpc library this patch removes unneeded build checks. - AC_PROG_CC is not needed to be called by the extension itself since it is already part of the main configure.ac and the phpize's configure.ac. - UNDEF_THREADS_HACK is not used in the current codebase. - Symbols defined by XMLRPC_HEADER_CHECKS are not used in the current code. - Symbols defined by XMLRPC_FUNCTION_CHECKS are not used in the current code. - AC_PROG_RANLIB is already done by the TSRM's files and isn't needed for the xmlrpc extension to work. - AC_PROG_LN_S is already done by the PHP main configure.ac and also isn't needed by the xmlrpc extension to be built.
* Remove unused rcsid variablesNikita Popov2019-04-118-23/+4
|
* Sync AC_CHECK_SIZEOF m4 macro callsPeter Kokot2019-03-182-11/+0
| | | | | | | | | | | | | | | | - AC_CHECK_SIZEOF is now called mostly only in PHP_CHECK_STDINT_TYPES() macro except for some parts checking for the 32 or 64 bit architecture. - SIZEOF_CHAR removed since it is always 1 - ZEND_BIN_ID is now of a more logical pattern `BIN_48888` on 64bit architectures and `BIN_44444` on 32bit instead of literal string `BIN_SIZEOF_CHAR48888` on 64bit and `BIN_SIZEOF_CHAR44444` on 32bit. The unneeded SIZEOF_CHAR part has been removed. - XMLRPC_TYPE_CHECKS removed - The `long long int` is the same as `long long` and redundant checks removed accordingly. - Removed PHP_CHECK_64BIT macro. Checking if current platform is 64bit or not can be also done simply by using a check of the long type on place. This removes redundant m4 macro PHP_CHECK_64BIT.
* Clean build systemPeter Kokot2019-03-141-9/+1
| | | | | | | | | | | | | | | | Changes: - AC_TYPE_SIZE_T called on only one place (configure.ac) - AC_FUNC_ALLOCA called on only one place (configure.ac) - AC_TYPE_UID_T called on only one place (configure.ac) - HAVE_STRSTR removed since strstr is part of C89 standard [1] - Remove checks for strtol and strpbrk - Checking for the presence of perror function is not needed anymore since it is part of C89 standard and PHP calls it unconditionally. - Checking for functions strdup, setenv, strerror, and memmove done only on one place (configure.ac) - outdated check for snprintf removed 1: https://port70.net/~nsz/c/c89/c89-draft.html
* Remove obsolescent AC_HEADER_STDC and memcpy checkPeter Kokot2019-03-011-2/+1
| | | | | | | | | | | | | | | | | | | | | Autoconf 2.59d (released in 2006) [1] started promoting several macros as not relevant for newer systems anymore, including the `AC_HEADER_STDC`. This macro checks if given system has C89 compliant header files such as `<string.h>`, `<stdlib.h>`, `<stdarg.h>`, `<float.h>`,... and defines the `STDC_HEADERS` symbol [2]. Case is that current systems should be well supported with at least C89 standard headers [3]. Given headers are still additionally checked with the `AC_PROG_CC` macro, yet not needed anyway. Additionally, the HAVE_MEMCPY check has been removed. The memcpy function is standardized by C89 and later. Refs: [1] http://git.savannah.gnu.org/cgit/autoconf.git/tree/NEWS [2] https://www.gnu.org/software/autoconf/manual/autoconf-2.69/autoconf.html [3] https://port70.net/~nsz/c/c89/c89-draft.html#4.1.2
* Merge branch 'PHP-7.3'Stanislav Malyshev2019-01-062-2/+5
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | * PHP-7.3: Fix #77367: Negative size parameter in mb_split 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
| * Merge branch 'PHP-7.2' into PHP-7.3Stanislav Malyshev2019-01-062-2/+5
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * PHP-7.2: 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
| | * Merge branch 'PHP-7.1' into PHP-7.2Stanislav Malyshev2019-01-062-2/+5
| | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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 bug #77380 (Global out of bounds read in xmlrpc base64 code)Stanislav Malyshev2019-01-061-2/+2
| | | |
| | | * Fix bug #77242 (heap out of bounds read in xmlrpc_decode())Stanislav Malyshev2019-01-061-0/+3
| | | |
| | | * Sync leading and final newlines in source code filesPeter Kokot2018-10-1413-31/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-131-1/+1
| | | |
| | * | Sync leading and final newlines in source code filesPeter Kokot2018-10-1413-31/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-131-1/+1
| | | |
| * | | Sync leading and final newlines in source code filesPeter Kokot2018-10-1412-28/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-131-1/+1
| | | |
* | | | [ci skip] Remove automake and aclocal in commentsPeter Kokot2018-10-211-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Automake and aclocal were part of the previous PHP build system where Automake created Makefile from the Makefile.in templates and aclocal was used to produce the aclocal.m4. They were removed as dependencies via 9d9d39a0de3bec962c343051011f5a2ed7d7b242 and e715fb00f8850990d51cee4e08e84a58f0eb0012.
* | | | Sync leading and final newlines in source code filesPeter Kokot2018-10-1412-28/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-131-1/+1
| | | |
* | | | Remove HAVE_STRING_HPeter Kokot2018-09-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The C89 standard and later defines the `<string.h>` header as part of the standard headers [1] and on current systems it is always present. Code included also `<strings.h>` header as an alterinative in some files. This kind of check was relevant on some older systems where the `<strings.h>` file included definitions for the C89 compliant `<string.h>`. Today such alternative check is not required anymore. The `<strings.h>` file is part of the POSIX definition these days. Also Autoconf suggests doing this and relying on C89 or above [2] and [3]. This patch also cleans few unused `<strings.h>` inclusions in the libmbfl. [1]: https://port70.net/~nsz/c/c89/c89-draft.html#4.1.2 [2]: http://git.savannah.gnu.org/cgit/autoconf.git/tree/lib/autoconf/headers.m4 [3]: https://www.gnu.org/software/autoconf/manual/autoconf-2.69/autoconf.html
* | | | Remove HAVE_STDLIB_HPeter Kokot2018-09-161-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The C89 and later standard defines the `<stdlib.h>` header as part of the standard headers [1] and on current systems it is always present and the `HAVE_STDLIB_H` symbol can be removed. Also Autoconf suggests doing this and relying on C89 or above [2] and [3]. [1] https://port70.net/~nsz/c/c89/c89-draft.html#4.1.2 [2] http://git.savannah.gnu.org/cgit/autoconf.git/tree/lib/autoconf/headers.m4 [3] https://www.gnu.org/software/autoconf/manual/autoconf-2.69/autoconf.html
* | | | Remove AC_HEADER_TIMEPeter Kokot2018-09-021-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Autoconf 2.59d (released in 2006) [1] started promoting several macros as not relevant for newer systems anymore, including the `AC_HEADER_TIME`. This macro checks if both `<sys/time.h>` and `<time.h>` can be included at the same time and defines the `TIME_WITH_SYS_TIME` and `HAVE_SYS_TIME_H` symbols. On current system such check is not relevant anymore because in case both headers are present both can be also included at the same time. This patch simplifies this checking. Refs: [1] http://git.savannah.gnu.org/cgit/autoconf.git/tree/NEWS [2] https://www.gnu.org/software/autoconf/manual/autoconf-2.69/autoconf.html
* | | | Remove AC_C_CONSTPeter Kokot2018-09-021-1/+0
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Autoconf 2.59d (released in 2006) [1] started promoting several macros as not relevant for newer systems, including the `AC_C_CONST`. The `const` keyword is used in C since C89. On old systems some compilers lacked the `const` and this macro defined it to be empty. This check was relevant on systems with compilers before C89 and on current systems it can be omitted. [2] PHP also requires at least C89 so `const` is always available. Refs: [1] http://git.savannah.gnu.org/cgit/autoconf.git/tree/NEWS [2] https://www.gnu.org/software/autoconf/manual/autoconf-2.69/autoconf.html
* | | erealloc() is infallibleChristoph M. Becker2018-06-131-3/+0
| | |
* | | emalloc never returns nullMarkus Staab2018-06-131-18/+16
| | |
* | | Remove, or fix, unused variablesGabriel Caruso2018-03-272-7/+1
|/ /
* | Merge branch 'PHP-7.1'Stanislav Malyshev2016-11-052-3/+3
|\ \ | |/ | | | | | | * PHP-7.1: More int->size_t and string overflow fixes
| * More int->size_t and string overflow fixesStanislav Malyshev2016-11-052-3/+3
| |
* | Merge branch 'PHP-7.1'Stanislav Malyshev2016-11-032-2/+6
|\ \ | |/ | | | | | | | | | | * PHP-7.1: Add length check for bzcompress too - fix for bug #73356 More string length checks & fixes More string length checks & fixes
| * Merge branch 'PHP-5.6' into PHP-7.0Stanislav Malyshev2016-11-032-2/+7
| |\ | | | | | | | | | | | | * PHP-5.6: More string length checks & fixes
| | * More string length checks & fixesStanislav Malyshev2016-11-032-10/+15
| | |
* | | remove redundant includesAnatol Belski2016-10-201-11/+0
| | |
* | | fix Windows compilationAnatol Belski2016-10-208-38/+1
| | | | | | | | | | | | | | | php.h is included, it contains all the stuff needed and conflicts otherwise.
* | | Implement #72612 (libxmlrc uses system malloc instead of PHP alloc routines)Joe Watkins2016-10-1912-95/+98
|/ /
* | Merge branch 'PHP-5.6' into PHP-7.0Stanislav Malyshev2016-07-192-5/+21
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * PHP-5.6: fix #72519, possible OOB using imagegif fix #72512, invalid read or write for palette image when invalid transparent index is used Apparently some envs miss SIZE_MAX Fix tests Fix bug #72618: NULL Pointer Dereference in exif_process_user_comment Partial fix for bug #72613 - do not treat negative returns from bz2 as size_t Fix bug #72606: heap-buffer-overflow (write) simplestring_addn simplestring.c Fix for bug #72558, Integer overflow error within _gdContributionsAlloc() Fix bug #72603: Out of bound read in exif_process_IFD_in_MAKERNOTE Fix bug #72562 - destroy var_hash properly Fix bug #72533 (locale_accept_from_http out-of-bounds access) Fix fir bug #72520 Fix for bug #72513 Fix for bug #72513 CS fix and comments with bug ID Fix for HTTP_PROXY issue. 5.6.24RC1 add tests for bug #72512 Fixed bug #72512 gdImageTrueColorToPaletteBody allows arbitrary write/read access Fixed bug #72479 - same as #72434 Conflicts: Zend/zend_virtual_cwd.c ext/bz2/bz2.c ext/exif/exif.c ext/session/session.c ext/snmp/snmp.c ext/standard/basic_functions.c main/SAPI.c main/php_variables.c
| * Merge branch 'PHP-5.5' into PHP-5.6Stanislav Malyshev2016-07-192-25/+41
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * PHP-5.5: fix #72519, possible OOB using imagegif fix #72512, invalid read or write for palette image when invalid transparent index is used Apparently some envs miss SIZE_MAX Fix tests Fix bug #72618: NULL Pointer Dereference in exif_process_user_comment Partial fix for bug #72613 - do not treat negative returns from bz2 as size_t Fix bug #72606: heap-buffer-overflow (write) simplestring_addn simplestring.c Fix for bug #72558, Integer overflow error within _gdContributionsAlloc() Fix bug #72603: Out of bound read in exif_process_IFD_in_MAKERNOTE Fix bug #72562 - destroy var_hash properly Fix bug #72533 (locale_accept_from_http out-of-bounds access) Fix fir bug #72520 Fix for bug #72513 CS fix and comments with bug ID Fix for HTTP_PROXY issue. add tests for bug #72512 Fixed bug #72512 gdImageTrueColorToPaletteBody allows arbitrary write/read access Fixed bug #72479 - same as #72434 Conflicts: ext/bz2/bz2.c main/SAPI.c main/php_variables.c
| | * Apparently some envs miss SIZE_MAXStanislav Malyshev2016-07-191-0/+3
| | |
| | * Fix bug #72606: heap-buffer-overflow (write) simplestring_addn simplestring.cStanislav Malyshev2016-07-182-25/+38
| | |
| * | typo fixes - https://github.com/vlajos/misspell_fixerVeres Lajos2014-11-231-1/+1
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: ext/ftp/ftp.h ext/pcre/pcrelib/pcre_printint.c ext/pcre/pcrelib/sljit/sljitLir.c ext/pcre/pcrelib/sljit/sljitLir.h ext/pcre/pcrelib/sljit/sljitNativeARM_32.c ext/pcre/pcrelib/sljit/sljitNativeTILEGX_64.c ext/pgsql/pgsql.c ext/phar/func_interceptors.c ext/soap/soap.c ext/standard/image.c
* | fix snprintf redefinition in libxmlrpc under vc14Anatol Belski2015-05-101-1/+1
| |
* | trailing whitespace removalStanislav Malyshev2015-01-1024-486/+486
| |
* | first shot remove TSRMLS_* thingsAnatol Belski2014-12-131-2/+1
| |
* | typo fixes - https://github.com/vlajos/misspell_fixerVeres Lajos2014-11-231-1/+1
| |
* | Merge branch 'PHP-5.6'Remi Collet2014-10-281-1/+5
|\ \ | |/ | | | | | | * PHP-5.6: Ensure we have enough input data before parsing date
| * Ensure we have enough input data before parsing dateRemi Collet2014-10-281-1/+5
| | | | | | | | | | | | | | | | This check have be removed in http://git.php.net/?p=php-src.git;a=commit;h=ba2f87b50667f147c198abd31fc31eb09522f3d7 But the parser really need 17 char. And the string need to be nul terminated for this check So avoid reading random byte from memory.
| * Fix bug #68027 - fix date parsing in XMLRPC libStanislav Malyshev2014-10-141-5/+8
| |