Commit Graph

46 Commits

Author SHA1 Message Date
Mingli Yu
0e0fc7efe3 php: Upgrade to 8.1.0
Rebase one patch to new version and enable openssl PACKAGECONFIG
as OpenSSL 3.0 is now supported in the new version now [1] and
remove one patch [2] as the related support for cross-compile env
is already added in 8.1.0 [3].

[1] 7b34db0659
[2] https://git.openembedded.org/meta-openembedded/commit/?id=265bab83c9acbfa97117103dd5c35bbd8a9814d6
[3] f1ad9199ef

Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-12-21 18:53:28 -08:00
Changqing Li
af758fe2d8 php: correct module name and library name
wrong name make service apache2 start failed with failure:
httpd: Syntax error on line 511 of /etc/apache2/httpd.conf: Syntax error on line 1 of /etc/apache2/modules.d/70_mod_php8.conf: Cannot load /usr/libexec/apache2/modules/libphp7.so into server: /usr/libexec/apache2/modules/libphp7.so: cannot open shared object file: No such file or directory

httpd: Syntax error on line 511 of /etc/apache2/httpd.conf: Syntax error on line 1 of /etc/apache2/modules.d/70_mod_php8.conf: Can't locate API module structure `php7_module' in file /usr/libexec/apache2/modules/libphp.so: /usr/libexec/apache2/modules/libphp.so: undefined symbol: php7_module

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-11-19 08:31:14 -08:00
Claude Bing
265bab83c9 php: use qemu wrapper to build minilua
minilua, by default, is compiled by the host machine as a
dependency for compiling the JIT/opcache extension. To
successfully cross-compile, this needs to be run under QEMU to
match the target architecture.

According to the [RFC](https://wiki.php.net/rfc/jit), only
x86 and x86_64 targets are supported.

Signed-off-by: Ashley Cox <ashleyc@cybernetics.com>
Signed-off-by: Claude Bing <cbing@cybernetics.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-11-16 09:11:31 -08:00
Khem Raj
ce3a46e874 php: Build minilua for build host
see https://bugs.php.net/bug.php?id=80717&edit=1

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-11-13 01:17:18 -08:00
Claude Bing
7175f8b669 php: update from 7.4.21 to 8.0.12
Various security and bug fixes; adds support for the JIT compiler.

 * Fixed bug #81026 (PHP-FPM oob R/W in root process leading to
   privilege escalation) (CVE-2021-21703).

https://www.php.net/ChangeLog-8.php#8.0.0

Signed-off-by: Claude Bing <cbing@cybernetics.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-11-11 08:31:56 -08:00
Mingli Yu
e418ee4657 php: Upgrade to 7.4.16
License-Update: License updated (year updated)

Fix some security issues such as CVE-2021-21702 and remove two
cve patches which already included in the new version.

Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-04-21 08:27:01 -07:00
Zheng Ruoqin
fa80193468 php: CVE-2020-7069
Security Advisory

References
https://nvd.nist.gov/vuln/detail/CVE-2020-7069
https://bugs.php.net/patch-display.php?bug_id=79601&patch=openssl_aes_ccm_iv_fix&revision=latest

Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-12-15 00:52:55 -08:00
Zheng Ruoqin
aff8a1fefb php: CVE-2020-7070
Security Advisory

References
https://nvd.nist.gov/vuln/detail/CVE-2020-7070
https://bugs.php.net/patch-display.php?bug=79699&patch=fix-urldecode&revision=1600650364
https://github.com/php/php-src/blob/master/main/php_variables.c

Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-12-15 00:52:55 -08:00
Qi.Chen@windriver.com
75d7f48c66 php: use /run instead /var/run in systemd service file
/var/run has been deprecated by systemd, so use /run instead,
as suggested by systemd.

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-10-16 09:21:54 -07:00
Leon Anavi
f46931abf0 php: Upgrade 7.4.4 -> 7.4.9
Upgrade to release 7.4.9:

- Fixed: Upgrade apache2handler's php_apache_sapi_get_request_time
  to return usec
- Fixed: BSTR to PHP string conversion not binary safe
- Fixed: DCOM does not work with Username, Password parameter
- Fixed: serialize() and unserialize() methods can not be called
  statically
- Fixed: Segfault in php_str_replace_common
- Fixed: Assertion failure if dumping closure with unresolved
  static variable
- Fixed: Assertion failure when assigning property of string
  offset by reference
- Fixed: HT iterators not removed if empty array is destroyed
- Fixed: Changing array during undef index RW error segfaults
- Fixed: Use after free if changing array during undef var during
  array write fetch
- Fixed: Use after free if string used in undefined index warning
  is changed
- Fixed: Public non-static property in child should take priority
  over private static
- Fixed: getimagesize function silently truncates after a null
  byte
- Fixed: finfo_file crash (FILEINFO_MIME)
- Fixed: ftp_size on large files
- Fixed: mb_strimwidth does not trim string
- Fixed: Use of freed hash key in the phar_parse_zipfile function
- Fixed: ::getStaticProperties() ignores property modifications
- Fixed: ::getStaticPropertyValue() throws on protected props
- Fixed: Use after free when type duplicated into
  ReflectionProperty gets resolved
- Fixed: Can't copy() large 'data://' with open_basedir
- Fixed: dns_check_record() always return true on Alpine
- Fixed: array_walk() does not respect property types

Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-08-31 13:04:43 -07:00
Claude Bing
3cfd16be4e php: update fix for opcache link issue in 7.4.4
The source of the issue is the update for PHP 7.4 support in
0001-opcache-config.m4-enable-opcache.patch (commit 7cc7a9ec).  Instead
of working around the issue in the recipe file, update the patch to
restore the call to PHP_ADD_LIBRARY().

Signed-off-by: Claude Bing <cbing@cybernetics.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-05-08 19:56:06 -07:00
Changqing Li
7cc7a9ec88 php: upgrade 7.3.16 -> 7.4.4
License-Update: License updated (year updated)

note: for 7.4, pear is disabled by default,
and it will be deprecated in future.

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-04-27 07:48:47 -07:00
Changqing Li
60c1d2eb9a php: upgrade 7.3.11 -> 7.3.16
* upgrade to 7.3.16
* remove unuseful patches

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-04-16 08:43:06 -07:00
Wang Mingyu
539119d170 php: CVE-2019-11045.patch CVE-2019-11046.patch CVE-2019-11047.patch CVE-2019-11050.patch
Security Advisory

References:
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-11045
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-11046
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-11047
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-11050

Signed-off-by: Wang Mingyu <wangmy@cn.fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-03-18 19:29:01 -07:00
Li Zhou
664f8e1373 php: Security Advisory - php - CVE-2020-7059
Backport the patch <http://git.php.net/?p=php-src.git;a=commit;
h=0f79b1bf301f455967676b5129240140c5c45b09> to solve CVE-2020-7059.
Because of the version context, this porting mainly refers to the
version merging commit <http://git.php.net/?p=php-src.git;a=commit;
h=a8a6242db7c01bb2d87f29e9b8d5ff3f0f847645>

Signed-off-by: Li Zhou <li.zhou@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-02-21 08:50:36 -08:00
Adrian Bunk
5826b0f1dd php: Upgrade 7.3.9 -> 7.3.11
Patch for issue fixed upstream removed.
Also merge the inc into the recipe.

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-11-01 17:22:52 -07:00
Trevor Gamblin
ec48bd3bdf php: fix CVE-2019-6978
Patch for php to sync with the fix for the same issue in
libgd.

CVE: CVE-2019-6978
Signed-off-by: Trevor Gamblin <trevor.gamblin@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-10-04 19:11:55 -07:00
Yi Zhao
54983c1351 php: fix module path in mod_php.conf
The apache2 module's path has been changed from ${libdir} to
${libexecdir} in commit 8d4d608b4e. Update
mod_php.conf to adapt it.

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-09-10 06:54:01 -07:00
Slater, Joseph
cfcbbdc48b php: remove host specific info from header file
Import patch from Debian.

Signed-off-by: Joe Slater <joe.slater@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-07-21 09:31:09 -07:00
Hongxu Jia
ef93dc3396 php: remove 5.6.40
Lets remove it directly, since October would be a year after
EOL so waiting until then would make it quite stale

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-07-16 09:11:02 -07:00
Changqing Li
f6706cec17 php-fpm-apache: fix module path
with configuration:
IMAGE_INSTALL_append = " apache2 php-fpm-apache2"

systemctl status apache2.service report error:
httpd: Syntax error on line 509 of /etc/apache2/httpd.conf: Syntax error on line 3 of /etc/apache2/conf.d/php-fpm.conf: Cannot load lib/apache

fix by correct the module path

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-06-15 16:45:32 -07:00
Slater, Joseph
3327944ba5 php-7: mark two tests as expected to fail
The output is reasonable, but not what is expected.

Signed-off-by: Joe Slater <joe.slater@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-05-21 17:52:23 -07:00
Changqing Li
ebfe36cdc9 php: upgrade 7.3.2 -> 7.3.4
Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-04-30 12:18:30 -07:00
Changqing Li
4c2c33de56 php: upgrade 7.2.10 -> 7.3.2 / 5.3.39 -> 5.6.40
License-Update: 7.x version trim trailing whitespace

7.x:
* drop CVE-2017-9120.patch since it cannot resolve the CVE
* use recommand option --with-libzip, bundled libzip is deprecated
* update patches

5.x:
* use recommand option --with-libzip, bundled libzip is deprecated
* update patches

* Fix php 7.x cross build on hosts which have libxml2 installed

libxml2 is not detected properly, it pokes at host and takes the
libraries and header files added to build which links in libraries like
libicu which may not be available in sysroot causing configure failures
like

checking for sqlite3 files in default path... found in TOPDIR/build/tmp/work/aarch64-yoe-linux/php/7.3.2-r0/recipe-sysroot/usr/lib/..
checking for SQLite 3.3.9+... checking for sqlite3_prepare_v2 in -lsqlite3... no
not found
configure: error: Please install SQLite 3.3.9 first or check libsqlite3 is present

the reason is configure test fails to find icu libraries since they were
added based on build host's libxml2.pc

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-02-15 06:58:55 -08:00
Hongxu Jia
d26bf9ae0c php5: 5.6.36 -> 5.6.38
1. Support openssl 1.1.x

2. 5.6.38 ChangeLog (http://php.net/ChangeLog-5.php#5.6.38)
- Fixed bug #76582 (XSS due to the header Transfer-Encoding: chunked).

- Fixed bug #76423 (Int Overflow lead to Heap OverFlow in
  exif_thumbnail_extract of exif.c). (CVE-2018-14883)

- Fixed bug #76557 (heap-buffer-overflow (READ of size 48) while
  reading exif data). (CVE-2018-14851)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-09-26 09:46:42 -07:00
Changqing Li
0d59551c95 php: fix CVE-2017-9120
Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-08-21 00:22:12 -07:00
changqing.li@windriver.com
188097b4e9 php: upgrade 7.2.4 -> 7.2.7
Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-06-29 07:00:52 -07:00
Hongxu Jia
75a84a920a php 7.2.4: fix do_compile failure on qemumips
It caused by a new variable is declared after the label

There is a build failure on mips:
...
|sljitNativeMIPS_common.c: In function 'sljit_has_cpu_feature':
|sljitNativeMIPS_common.c:506:3: error: a label can only be part
of a statement and a declaration is not a statement
|   sljit_sw fir;
|   ^~~~~~~~
...

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
2018-05-01 18:12:50 -07:00
Anuj Mittal
0d052a48c9 php: add opcache extension to PACKAGECONFIG
OPcache improves PHP performance by storing precompiled script bytecode
in shared memory, thereby removing the need for PHP to load and parse
scripts on each request [1].

Add an option to enable opcache in php. AC_CHECK_FUNC isn't suitable for a
cross-compile environment, so pass the configure options instead to force
dlopen detection that is necessary to have extension support enabled.

On a standard phpbench test, I see a performance improvement of > 40%.

[1] http://php.net/manual/en/book.opcache.php

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
2018-04-08 17:00:06 -07:00
Anuj Mittal
1816eb7779 php5: upgrade to 5.6.35
For changes, see:
http://php.net/ChangeLog-5.php#5.6.35

Split patches between php5 and php7 to ensure there are no
fuzz warnings for both the versions.

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
2018-04-08 17:00:06 -07:00
Anuj Mittal
2768c1deb3 php7: upgrade to 7.2.4
* For changes, see:
http://www.php.net/ChangeLog-7.php#7.2.4

* Remove patches as they've been upstreamed:
- 0001-Specify-tag-with-libtool.patch
- CVE-2017-16642.patch
- CVE-2018-5711.patch

* mcrypt module has been deprecated and as such dependency has been moved
from php.inc to php5 recipe.

* Refresh patches to avoid fuzz warnings.

* New patches to:
- Make sure libxml is detected using pkg-config instead of binconfig.
- Fix link time warnings (backport, see patch for details)

* Move the following patches to php5 from inc as they were getting applied
out of context:
- acinclude-xml2-config.patch
- 0001-acinclude-use-pkgconfig-for-libxml2-config.patch

License-Update: License is same, just a change in copyright year to 2018.

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
2018-04-08 17:00:06 -07:00
Anuj Mittal
08c5797ccb php: move patches to a single directory
Having two directories with version numbers just leads to unnecessary
churn everytime there's a version update.

We can have all patches in one single directory and differentiate b/w
specific version by prefix php5-/php7-

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
2018-04-08 17:00:06 -07:00
dengke.du@windriver.com
6cd249225e php: fix install error for libphp*.so
Changed in V4:
	Add the tag: meta-oe

1. Different version php have different libphp*.so, so we need to install its
   corresponding libphp*.so, for example:

    php-7.1.0  libphp7.so
    php-5.6.26 libphp5.so

2. Fix php-5.6.26 compiling errors:

    ld: TSRM/.libs/TSRM.o: undefined reference to symbol
    'pthread_sigmask@@GLIBC_2.2.5'
    error adding symbols: DSO missing from command line

3. Create a configure script like 70_mod_php5, we name it 70_mod_php7, this
   file connect the php7 and the apache2, so they work together to let the
   LAMP works correctly.

Signed-off-by: Dengke Du <dengke.du@windriver.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-05-23 15:49:36 +02:00
Kang Kai
ee4e79caf9 php: upgrade from 5.5.24 to 5.5.26
Upgrade php from 5.5.24 to 5.5.26. Remove part 2 of phar-makefile.patch
which is useless.

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2015-06-23 12:41:53 +02:00
Alejandro Hernandez
2848cc99a1 php-fpm: Add support for systemd
Adds suport for systemd, creates a service for php-fpm and installs it if required

Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2015-05-22 20:13:32 +02:00
Paul Eggleton
4aafeeecef php: fix phar script packaging
Fix several issues with how the phar package is installed and packaged:
* The symlink was pointing to an absolute path on the host, which
  naturally does not work on the target
* The script itself had a shebang pointing to a path on the host
* A file-rdeps warning was occurring due to rpmdeps detecting that the
  script requires the php binary; in order to prevent the main php
  package depending on php-cli which provides the php binary, move the
  phar script to its own package (I suspect most people won't need it
  anyway).

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2015-01-08 12:04:26 +01:00
Paul Eggleton
18a97c00b7 php: integrate modphp
Build the mod_php Apache module within the main php recipe; this avoids
files in the sysroot from stepping on eachother and therefore avoids the
resulting build failure.

Changes made:
* Add an "apache2" PACKAGECONFIG, default disabled. This means that if
  you previously used the modphp recipe you now need to set
  PACKAGECONFIG for php to include "apache2".
* Bring in most patches and configure options from the modphp recipe.
* Specify ${libdir}/php5 as libdir. This avoids the PHP extensions
  directory being /usr/lib/extensions by default which is ugly.
* Tidy up some superfluous/malformed entries in FILES_${PN}-pear
* Drop obsolete PHP_MAJVER
* Replace virtclass- override with class-

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2015-01-08 12:04:26 +01:00
Koen Kooi
4deb828fff php: update to 5.4.33
One patch was a backport and can be dropped, add Upstream-status to the others.

Signed-off-by: Koen Kooi <koen.kooi@linaro.org>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2014-10-10 12:47:34 +02:00
Koen Kooi
466e0278ac php 5.4.14: use pkg-config for libxml2 detection
Signed-off-by: Koen Kooi <koen.kooi@linaro.org>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2014-08-05 12:02:40 +02:00
Marcin Juszkiewicz
f91950e3ad php: update to 5.4.14
Build tested for AArch64 and x86.
Runtime tested on x86.

Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2013-04-22 09:51:47 +02:00
Martin Jansa
a45830a39b recipes: Unify indentation
* This change is only aesthetic (unlike indentation in Python
  tasks).
* Some recipes were using tabs.
* Some were using 8 spaces.
* Some were using mix or different number of spaces.
* Make them consistently use 4 spaces everywhere.
* Yocto styleguide advises to use tabs (but the only reason to keep
  tabs is the need to update a lot of recipes). Lately this advice
  was also merged into the styleguide on the OE wiki.
* Using 4 spaces in both types of tasks is better because it's less
  error prone when someone is not sure if e.g.
  do_generate_toolchain_file() is Python or shell task and also allows
  to highlight every tab used in .bb, .inc, .bbappend, .bbclass as
  potentially bad (shouldn't be used for indenting of multiline
  variable assignments and cannot be used for Python tasks).
* Don't indent closing quote on multiline variables
  we're quite inconsistent wheater it's first character on line
  under opening quote or under first non-whitespace character in
  previous line.

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Acked-by: Koen Kooi <koen@dominion.thruhere.net>
2013-04-15 16:23:17 +02:00
Martin Jansa
580fd6c743 meta-openembedded: use correct format of Upstream-Status
* some patches have also incorrect value, but e.g. "Unknown" is as good as
  "Pending" to me

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2012-12-23 09:40:44 +01:00
Marcin Juszkiewicz
8424c379fb php: add apache configuration for php-fpm
Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
2012-12-04 10:44:20 +01:00
Eric BENARD
94a59521dc php: enable php-fpm
- php-fpm is an alternative PHP FastCGI implementation which seems to
be now prefered to php-fcgi
- this patch enable the build of php-fpm and packages it in its own
package
- it's tested with hiawatha on an armv5te target

Signed-off-by: Eric Bénard <eric@eukrea.com>
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
2012-12-04 10:43:10 +01:00
Eric BENARD
f8a7fc5574 php: upgrade to 5.3.19
Signed-off-by: Eric Bénard <eric@eukrea.com>
Acked-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
2012-12-04 10:43:08 +01:00
Koen Kooi
120753e743 php 5.3.6: import from OE classic
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
2011-11-03 15:02:20 +01:00