Commit Graph

112494 Commits

Author SHA1 Message Date
Robert Kopack
b546ae986a Implement SQLite extended result code functionality 2019-07-02 13:03:35 +02:00
SjonHortensius
615ce0b099 update NEWS [ci skip]
add #2684
2019-07-02 12:32:42 +02:00
Nikita Popov
4a08885ed9 Merge branch 'PHP-7.3' into PHP-7.4 2019-07-02 12:28:46 +02:00
Nikita Popov
7174c44557 Merge branch 'PHP-7.2' into PHP-7.3 2019-07-02 12:28:37 +02:00
Alex Scott
a4acff3e21 Fix bug #78138: opcache.validate_permission incorrectly works with PHAR files
opcache incorrectly handles PHAR files when opcache.validate_permission
option enabled, because it calls

  access("phar://path-to/file.phar/path/inside.php", R_OK);

rather than

  access("path-to/file.phar", R_OK)
2019-07-02 12:25:50 +02:00
Sjon Hortensius
a7881df281 PDO: support username & password specified in DSN 2019-07-02 12:09:38 +02:00
David Carlier
7f1fef9fe0 Fix opcache huge page mapping on FreeBSD
Too much room were given process mappings and were not unmapped.

Closes GH-4345.
2019-07-02 11:59:08 +02:00
Nikita Popov
03846afdf7 Fix clang build 2019-07-02 10:16:55 +02:00
Nikita Popov
1e06a8ef95 Update proto comment for proc_open 2019-07-02 10:10:51 +02:00
Nikita Popov
b88ef3dc58 Remove unused (module|request)_shutdown_for_exec 2019-07-02 10:10:51 +02:00
Dmitry Stogov
baa883d3fc Fixed build without global register variables 2019-07-02 11:03:22 +03:00
Dmitry Stogov
cbbd473bdd Separate slow code 2019-07-02 01:16:34 +03:00
Dmitry Stogov
2d4bb4f44a Use string destructor instead of general zval_ptr_dtor_nogc() 2019-07-02 01:14:33 +03:00
Dmitry Stogov
f58c645dcc Eliminate exception checks 2019-07-02 01:11:41 +03:00
Christoph M. Becker
52a0630cd4 Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
  Add missing SKIPIFs
2019-07-01 18:13:52 +02:00
Christoph M. Becker
3e25ddb07b Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
  Add missing SKIPIFs
2019-07-01 18:12:28 +02:00
Christoph M. Becker
57688ad7bf Add missing SKIPIFs
All these tests are meant to run with OPcache available, and some will
even fail inevitably without it, so we add OPcache as SKIPIF
requirement.
2019-07-01 18:11:13 +02:00
Nikita Popov
0dfca74be2 Setup msan on azure
This uses a separate job template, because msan requires all used
libraries (apart from glibc) to be instrumented, so we can't link
any external libraries unless we recompile them. As such, we need
a much more minimal configure.
2019-07-01 17:27:42 +02:00
Nikita Popov
59522c5a85 Generate less code in compile time binary op test
Don't generate try {} blocks for the operations that don't throw.
2019-07-01 17:27:42 +02:00
Nikita Popov
7acc828abf Skip perf-sensitive fileinfo tests 2019-07-01 17:27:42 +02:00
Christoph M. Becker
42bedcfb50 Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
  Add missing SKIPIFs
2019-07-01 17:24:33 +02:00
Christoph M. Becker
99e6c701e6 Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
  Add missing SKIPIFs
2019-07-01 17:22:55 +02:00
Christoph M. Becker
75bc3446f8 Add missing SKIPIFs
All these tests are meant to run with OPcache available, and some will
even fail inevitably without it, so we add OPcache as SKIPIF
requirement.
2019-07-01 17:21:16 +02:00
David Carlier
994a01ea43 opcache huge pages: Little fix for FreeBSD
Calculating the vm entries size beforehand, as we could
possibly miss few entries.

Closes GH-4344.
2019-07-01 16:55:23 +02:00
Christoph M. Becker
237f07ea9d Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
  Fix brittle test
2019-07-01 16:44:54 +02:00
Christoph M. Becker
d714be0f57 Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
  Fix brittle test
2019-07-01 16:43:47 +02:00
Christoph M. Becker
be559e6c37 Fix brittle test
This test is easily tripped by former test runs with other PHP
versions.  To avoid such false positives, we check that there is at
least one respective OPcache file, and that all found OPcache user ID
folders have exactly 32 hexadecimal digits.
2019-07-01 16:42:55 +02:00
Nikita Popov
af3e2d3186 Initialize last_line in phpdbg globals 2019-07-01 16:14:45 +02:00
Dmitry Stogov
f2b6b2eee8 Micro-optimization 2019-07-01 16:57:25 +03:00
Dmitry Stogov
39a0854307 Fixed GOTO VM 2019-07-01 15:50:53 +03:00
Peter Kokot
30c1c53164 Remove TSRM_BASIC_CHECKS
This macro is not needed anymore. The AC_PROG_CC is done in the main
configure.ac file and the ranlib check is done by the bundled libtool
macros.

Closes GH-4339
2019-07-01 13:23:41 +02:00
Peter Kokot
e558ee7999 Remove not needed checks for functions
The following functions don't need to be checked anymore since the
they are not used across the code or the symbols aren't used anymore:
- cuserid (not used)
- lrand48 (not used and removed via
  6d6ef7aacc)
- random (check is not used)
- srand48 (not used)
- srandom (not used)
- strdup (check is not used)

and the unused check symbols:
- HAVE_CUSERID
- HAVE_LRAND48
- HAVE_RANDOM
- HAVE_SRAND48
- HAVE_SRANDOM
- HAVE_STRDUP

Closes GH-4338
2019-07-01 13:21:28 +02:00
Peter Kokot
c70d9cdb11 Remove unused check for struct cmsghdr
The result of this check is to whether to define the HAVE_CMSGHDR symbol
or not. The HAVE_CMSGHDR is never used in the code and it has been
removed via 90289924c0.

Closes GH-4337
2019-07-01 13:13:51 +02:00
Nikita Popov
01e1e1991d Clarify #if indentation in time limit implemementation 2019-07-01 12:18:21 +02:00
Nikita Popov
83ee7b4c07 Run file_put_contents_variantion8 in separate directory
There are other tests that try to read these files.
2019-07-01 11:54:05 +02:00
Nikita Popov
7defd5f69c Fix unused variable warnings when mbregex disabled 2019-07-01 11:14:35 +02:00
Nikita Popov
da06f7f383 Msan: Unpoison buffer written by file cache
It would be great if this were fully initialized, but it's not
really a problem either (as long as we don't care about reproducible
file cache), so ignore this for now.
2019-07-01 11:14:28 +02:00
Nikita Popov
c8af6a7fa7 Don't use fast_memcpy under msan 2019-07-01 11:14:23 +02:00
Nikita Popov
7e6db70064 Msan: Unpoison getrandom() syscall result 2019-07-01 11:14:17 +02:00
Nikita Popov
5c0a9a4096 Add some tolerance to time_sleep_until() test
This has been sporadically failing on macos for a while. We've tried
a couple of things (using int arithmetic, normalizing to gettimeofday),
but this issue remains. I'm adding some tolerance to the test to
avoid CI failures.
2019-07-01 09:43:16 +02:00
Nikita Popov
736172d23d Disable RTLD_DEEPBIND under memory sanitizer
This was already done for address sanitizer.
2019-07-01 09:37:34 +02:00
Peter Kokot
3c472909c0 Update NEWS [ci skip] 2019-07-01 03:10:09 +02:00
Peter Kokot
ec8bf3bc97 Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
  Update NEWS [ci skip]
2019-07-01 02:55:02 +02:00
Peter Kokot
b039a4115f Update NEWS [ci skip] 2019-07-01 02:54:42 +02:00
Peter Kokot
6363f7a0c1 Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
  Fix bug #78197: PCRE2 version check
2019-07-01 02:53:10 +02:00
Peter Kokot
624488b5e8 Fix bug #78197: PCRE2 version check
When external PCRE library version is of format ##.##-RC# the check
failed.
2019-07-01 02:42:29 +02:00
Peter Kokot
aeaee62d92 Update changelogs [ci skip] 2019-07-01 01:35:29 +02:00
Peter Kokot
9a3c8e51e3 Sync functions checks
Removed unused checks:
- mbsinit check removed, HAVE_MBSINIT removed (not used in php-src)
- mempcpy check removed, HAVE_MEMPCPY removed (not used in php-src anymore since
  560ed89bfb which uses PHP's own implementation)
- strpncpy check removed, added via a8c9e893b6 and
  not used.
- setpgid check removed since HAVE_SETPGID is not used

Moved to a central configure.ac:
- fpclass
- mbrlen moved to configure.ac (since the HAVE_MBRLEN is used accross the php-src)
- sigprocmask
- getcwd
- getwd
- glob
- strfmon
- nice

Duplicated checks removed:
- gethostname
- getlogin
- getpwuid_r
- socketpair

- mprotect check simplified
2019-06-30 23:57:54 +02:00
Peter Kokot
8bc59a62c4 Remove unused build specific symbols
These were part of the following decomissioned extensions:
- PHP_SYBASE part of the sybase extension
- PHP_MSQL_* part of the msql extension
- PHP_APACHE_* symbols were used in apache and apache_hooks sapis
- PHP_FHTTPD_* symbols part of old sapi/fhttpd
- PHP_MYSQL_* symbols were part of the legacy mysql extension

- Remove PHP_ORACLE_* symbols
  These were part of the obsolete oracle extension that was moved to PECL
  via f35af61ef8.

- PHP_OCI8_SHARED_LIBADD and PHP_OCI8_DIR were removed via
  c33f88ccb0

And other are not used anywhere across the php-src codebase
2019-06-30 23:55:03 +02:00
Peter Kokot
839ff378bc Fix phar tests with hash extension
- The hash extension is now always available.

- Remove unfinished test
  The Phar::PGP currently doesn't exist yet.
2019-06-30 23:51:56 +02:00