Package: release.debian.org
Severity: normal
Tags: buster
User: release.debian....@packages.debian.org
Usertags: pu

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

[ Reason ]
The package update fixes segmentation fault caused by incomplete PHP 7.3 support
in the upstream package.

[ Impact ]
The PHP crashes when calling libvirt_node_get_cpu_stats (See #982804)

[ Tests ]
The fix was test by hand.

[ Risks ]
The patch is simple, previously the variable was incorrectly scoped.

[ Checklist ]
  [x] *all* changes are documented in the d/changelog
  [x] I reviewed all changes and I approve them
  [ ] attach debdiff against the package in (old)stable
  [ ] the issue is verified as fixed in unstable

[ Changes ]
* Just gbp.conf for new branch and new patch via gbp pq.

Ondrej

-----BEGIN PGP SIGNATURE-----

iQKTBAEBCgB9FiEEw2Gx4wKVQ+vGJel9g3Kkd++uWcIFAmA97YZfFIAAAAAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEMz
NjFCMUUzMDI5NTQzRUJDNjI1RTk3RDgzNzJBNDc3RUZBRTU5QzIACgkQg3Kkd++u
WcIlwQ/+JWn4ybBu5ay6OaaP4T2fyEIWb0RAEPCfvHyDGwI76h5xdLLcSlJMfYIb
CcYBVsAx4dgACCVNWbK9/yThmUBwFzIYE7grNqWJqQ7UAWViIcu7mXE9UIvggkxH
AmY7G9aeSTFkiWSyu8dFHIBK98jSGOR+tIz9O+iwAHsoCedzkyDRPsPzCgCHHpZC
BNowJkvWQRONjkn4xQBX9ygIjT98MgeCHJI35wB32a16FXkwMA57ljimZuC5ATQn
HDygvfGAB2GPNQF0nLcUuumbB6E4mQgzIEa+yYb/fptNzTmR+xjQ1Ln+JE8UV7vZ
gzVi47AcbTxzoyrpW4Hwe9wpRHKO0AxNLpgEkwQRXPPeWf+pjEjaWfT+MtlhDIAR
7hcpsk7axoFuDH9GVTtfLtWtdqEsADNk1O+tspOjNu2v5i7JZCZ/jWfXH5NyAayT
pLbwDcbKo4WRdy9B5JRNebtIsgZJ0bm4HFcbUeI/M4w+OVij/m74Z2rc0RPE6T43
uqTf3qWagYh0QYMX3crEnimxqk62n/YfELTCN4+Iw2AGsrFrdT4U6uPS1tuH2bTH
YJq2IZ+ebjKa0JpNIp3IVxRl7TOEZHyseY+K/nL6wnbYMY1SqfN6AacQB8AKUo+q
6HJCngAPKf1j3Rrpebr0IQSrMKdUTe9KMwQ4q+YtIcnEGJ9VI0g=
=Drd8
-----END PGP SIGNATURE-----
diff -Nru libvirt-php-0.5.4/debian/changelog libvirt-php-0.5.4/debian/changelog
--- libvirt-php-0.5.4/debian/changelog  2018-10-09 15:30:47.000000000 +0200
+++ libvirt-php-0.5.4/debian/changelog  2021-03-02 08:27:12.000000000 +0100
@@ -1,3 +1,11 @@
+libvirt-php (0.5.4-3+deb10u1) buster; urgency=medium
+
+  * Add gbp.conf for debian/buster
+  * Add patch to fix segmentation fault in libvirt_node_get_cpu_stats
+    (Closes: #982804)
+
+ -- Ondřej Surý <ond...@debian.org>  Tue, 02 Mar 2021 08:27:12 +0100
+
 libvirt-php (0.5.4-3) unstable; urgency=medium
 
   * Manually rebuild for PHP 7.3.0~rc2
diff -Nru libvirt-php-0.5.4/debian/gbp.conf libvirt-php-0.5.4/debian/gbp.conf
--- libvirt-php-0.5.4/debian/gbp.conf   2018-10-09 15:30:47.000000000 +0200
+++ libvirt-php-0.5.4/debian/gbp.conf   2021-03-02 08:27:12.000000000 +0100
@@ -1,3 +1,13 @@
+[DEFAULT]
+debian-branch = debian/buster
+debian-tag = debian/%(version)s
+upstream-branch = upstream
+upstream-tag = upstream/%(version)s
+pristine-tar = True
+
+[dch]
+meta = 1
+
 [import-orig]
 # those files should not be in the tarball
 filter = 
['CVS','*.bak','*~','*.orig','.cvsignore','.#*','autom4te/*','autom4te.cache/*','.svn','debian/*']
diff -Nru 
libvirt-php-0.5.4/debian/patches/0001-Don-t-rely-on-absolute-paths-in-tools-Makefile.am.patch
 
libvirt-php-0.5.4/debian/patches/0001-Don-t-rely-on-absolute-paths-in-tools-Makefile.am.patch
--- 
libvirt-php-0.5.4/debian/patches/0001-Don-t-rely-on-absolute-paths-in-tools-Makefile.am.patch
       2018-10-09 15:30:47.000000000 +0200
+++ 
libvirt-php-0.5.4/debian/patches/0001-Don-t-rely-on-absolute-paths-in-tools-Makefile.am.patch
       2021-03-02 08:27:12.000000000 +0100
@@ -1,4 +1,4 @@
-From: =?utf-8?q?Ond=C5=99ej_Sur=C3=BD?= <ond...@sury.org>
+From: =?utf-8?b?T25kxZllaiBTdXLDvQ==?= <ond...@sury.org>
 Date: Mon, 29 Aug 2016 12:11:14 +0200
 Subject: Don't rely on absolute paths in tools/Makefile.am
 
diff -Nru 
libvirt-php-0.5.4/debian/patches/0002-Fix-PHP7-VIRT_ARRAY_INIT-macro-implementation.patch
 
libvirt-php-0.5.4/debian/patches/0002-Fix-PHP7-VIRT_ARRAY_INIT-macro-implementation.patch
--- 
libvirt-php-0.5.4/debian/patches/0002-Fix-PHP7-VIRT_ARRAY_INIT-macro-implementation.patch
   1970-01-01 01:00:00.000000000 +0100
+++ 
libvirt-php-0.5.4/debian/patches/0002-Fix-PHP7-VIRT_ARRAY_INIT-macro-implementation.patch
   2021-03-02 08:27:12.000000000 +0100
@@ -0,0 +1,53 @@
+From: Dawid Zamirski <dzamir...@datto.com>
+Date: Mon, 8 Jul 2019 17:32:11 -0400
+Subject: Fix PHP7 VIRT_ARRAY_INIT macro implementation.
+
+This is a PHP 7 compatibilty macro which was segfaulting due to the
+temporary variable being defined in the do..while scoped block (to
+swallow semicolon for macros), e.g:
+
+zval *arr;
+VIRT_ARRAY_INIT(arr);
+VIRT_ADD_ASSOC_STRING(arr, "foo", "bar"); // <= segfault here
+
+The VIRT_ARRAY_INIT above was expanding to:
+do {
+  zval z_arr; // <= local scope definition
+  arr = &z_arr;
+  array_init(arr);
+} while (0)
+
+After this patch, the macro expands to:
+zval z_arr; // now defined in the scope of the macro caller
+do {
+    arr = &z_arr;
+    array_init(arr);
+} while (0)
+
+which solved the issue.
+
+Signed-off-by: Dawid Zamirski <dzamir...@datto.com>
+Reviewed-by: Michal Privoznik <mpriv...@redhat.com>
+---
+ src/libvirt-php.h | 7 ++++---
+ 1 file changed, 4 insertions(+), 3 deletions(-)
+
+diff --git a/src/libvirt-php.h b/src/libvirt-php.h
+index 7962e33..f26a48a 100644
+--- a/src/libvirt-php.h
++++ b/src/libvirt-php.h
+@@ -178,10 +178,11 @@ typedef virt_resource *virt_resource_handle;
+     _info.length = ZSTR_LEN(tmp_key_info); \
+     } while(0)
+ 
+-#define VIRT_ARRAY_INIT(_name) do { \
++#define VIRT_ARRAY_INIT(_name) \
+     zval z##_name; \
+-    _name = &z##_name; \
+-    array_init(_name); \
++    do { \
++      _name = &z##_name; \
++      array_init(_name); \
+     } while(0)
+ 
+ #else /* PHP_MAJOR_VERSION < 7 */
diff -Nru libvirt-php-0.5.4/debian/patches/series 
libvirt-php-0.5.4/debian/patches/series
--- libvirt-php-0.5.4/debian/patches/series     2018-10-09 15:30:47.000000000 
+0200
+++ libvirt-php-0.5.4/debian/patches/series     2021-03-02 08:27:12.000000000 
+0100
@@ -1 +1,2 @@
 0001-Don-t-rely-on-absolute-paths-in-tools-Makefile.am.patch
+0002-Fix-PHP7-VIRT_ARRAY_INIT-macro-implementation.patch

Reply via email to