Compare commits

..

252 Commits

Author SHA1 Message Date
Cole Robinson 15daaf9dad Fix virsh domifaddr --source=arp on kernel 6.10 (bz #2302245)
Signed-off-by: Cole Robinson <crobinso@redhat.com>
2024-08-27 09:47:12 -04:00
Daniel P. Berrangé 0e49b25b5b Bump release & add changelog for previous PR commit
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2024-07-09 12:50:49 +01:00
Dimitris b5937f6a85 backport fix for virtiofs socket SELinux label 2024-07-09 11:48:38 +00:00
Daniel P. Berrangé d307c3aa2e Fix crash in event loop (CVE-2024-4418), GSource leak & udev leak
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2024-06-05 12:29:59 +01:00
Cole Robinson f4d251ad6e Add sources
Signed-off-by: Cole Robinson <crobinso@redhat.com>
2024-03-01 13:00:28 -05:00
Cole Robinson b0d2e09842 Update to version 10.1.0
Signed-off-by: Cole Robinson <crobinso@redhat.com>
2024-03-01 12:47:39 -05:00
Cole Robinson b0dd011728 spec: Handle bash-completion .pc file move
it's in bash-completion-devel now, but pkgconfig() will handle
that for us.

Signed-off-by: Cole Robinson <crobinso@redhat.com>
2024-02-19 11:35:24 -05:00
Cole Robinson 2513c9ff81 libvirt-10.0.0-4
Rebuild for wireshark soname bump
2024-02-19 10:44:48 -05:00
Fedora Release Engineering 9ef5501a94 Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-25 03:55:08 +00:00
Fedora Release Engineering 659f2f0b36 Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-21 05:41:08 +00:00
Cole Robinson f3cac3532b libvirt-10.0.0-1
Update to version 10.0.0
2024-01-16 11:11:03 -05:00
jonathanspw 6eb56c2e71 fix regression for default input bus in libvirt >= 9.3
(cherry picked from commit dfeabf11e5)
2024-01-03 22:27:00 +00:00
Richard W.M. Jones 93a549eb1a Bump and rebuild for xen 4.18.0, third attempt 2023-12-08 10:02:08 +00:00
Adam Williamson f2a998ce76 Rebuild for xen 4.18.0 again 2023-12-05 10:41:25 -08:00
Cole Robinson 8556d44e84 libvirt-9.10.0-1
Update to version 9.10.0
2023-12-02 12:22:48 -05:00
Richard W.M. Jones f8539fae13 Backport upstream cfcbba4c2b8a
commit cfcbba4c2b8a2062dec36072a34209229b6c3277
  Author: Michal Prívozník <mprivozn@redhat.com>
  Date:   Wed Nov 22 14:58:49 2023 +0100

    lib: Replace qsort() with g_qsort_with_data()
2023-11-30 10:40:30 +00:00
Richard W.M. Jones 80a3188a20 Fix libxml2 API changes 2023-11-30 09:02:20 +00:00
Richard W.M. Jones 56d89b1d61 Bump and rebuild for xen 4.18.0 2023-11-30 08:35:47 +00:00
Cole Robinson 2a7828bae8 libvirt-9.9.0-2
Fix crash with snapshot restore (bz #2247754)
2023-11-06 09:53:21 -05:00
Cole Robinson c879325741 spec: Fix mingw build
Signed-off-by: Cole Robinson <crobinso@redhat.com>
2023-11-01 17:06:43 -04:00
Cole Robinson edf6aa6cd7 libvirt-9.9.0-1
Update to version 9.9.0
2023-11-01 10:17:27 -04:00
Cole Robinson 163b87484b libvirt-9.8.0-1
Update to version 9.8.0
2023-10-05 20:59:33 -04:00
Daniel P. Berrangé 5828ec5da6 Update to 9.7.0 release
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2023-09-01 12:27:57 +01:00
Cole Robinson adaeee1c2c libvirt-9.6.0-1
Update to version 9.6.0
2023-08-01 08:10:39 -04:00
Fedora Release Engineering 200f2942a9 Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-07-20 12:28:15 +00:00
Cole Robinson cbf07f0551 libvirt-9.5.0-1
Update to version 9.5.0
2023-07-05 10:24:18 -04:00
Cole Robinson eb9ceebe38 spec: re-enable numad for fedora and eln
numad was added back to the distro

Signed-off-by: Cole Robinson <crobinso@redhat.com>
2023-07-05 10:23:08 -04:00
Cole Robinson 507eb37491 libvirt-9.4.0-1
Update to version 9.4.0
2023-06-28 14:14:37 -04:00
Yaakov Selkowitz 3e211fa0f6 Disable numad also in RHEL 10+ builds
As a result of numad being retired in F39+, it is also removed from ELN,
and hence would be dropped from RHEL 10.

Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
2023-05-25 01:23:45 -04:00
Cole Robinson d4bb64489a Bump release
Signed-off-by: Cole Robinson <crobinso@redhat.com>
2023-05-23 12:55:49 -04:00
Cole Robinson 6d908194bf Drop numad usage, it is removed from f39
https://src.fedoraproject.org/rpms/numad/c/a6bb891e8447e3b2a4c63774da94ad0d9b4ee50a?branch=rawhide
https://pagure.io/releng/failed-composes/issue/4990#comment-857670

Signed-off-by: Cole Robinson <crobinso@redhat.com>
2023-05-23 12:53:06 -04:00
Cole Robinson 2333a80c1a libvirt-9.3.0-1
Update to version 9.3.0
2023-05-02 09:47:09 -04:00
Cole Robinson f4fd6d7df6 libvirt-9.2.0-1
Update to version 9.2.0
2023-04-05 15:26:13 -04:00
Cole Robinson c1a3411c3b libvirt-9.1.0-1
Update to version 9.1.0
2023-03-01 12:55:47 -05:00
Fedora Release Engineering 619904f37a Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-01-19 17:46:01 +00:00
Cole Robinson 044c5b0665 libvirt-9.0.0-1
Update to version 9.0.0
2023-01-16 13:21:37 -05:00
Daniel P. Berrangé 50aba9b5a0 Trim changelogs older than 2 years
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2023-01-09 10:44:05 +00:00
Richard W.M. Jones c98b586e70 Rebuild for xen-4.17.0 2023-01-03 08:24:40 +00:00
Cole Robinson 987430ba8b libvirt-8.10.0-1
Update to version 8.10.0
2022-12-03 18:45:22 -05:00
Cole Robinson 58043b20fb libvirt-8.9.0-1
Update to version 8.9.0
2022-11-03 05:21:34 -04:00
Cole Robinson f1888958a6 Fix tests on aarch64
Signed-off-by: Cole Robinson <crobinso@redhat.com>
2022-10-27 10:14:05 -04:00
Cole Robinson 6c3d79e65d libvirt-8.8.0-2
Rebuild for wireshark soname bump
2022-10-24 11:02:56 -04:00
Cole Robinson dc9be9b9a7 Add missing sources
Signed-off-by: Cole Robinson <crobinso@redhat.com>
2022-10-04 10:27:49 -04:00
Cole Robinson 5e0d67787a libvirt-8.8.0-1
Update to version 8.8.0

Signed-off-by: Cole Robinson <crobinso@redhat.com>
2022-10-04 10:22:03 -04:00
Jens Petersen 662f0e2ba4 change gettext requires to gettext-runtime for F37 (#2117209)
See https://fedoraproject.org/wiki/Changes/GettextRuntimeSubpackage
2022-09-09 17:13:27 +08:00
Cole Robinson 66060fa395 libvirt-8.7.0-1
Update to version 8.7.0
2022-09-06 10:25:54 -04:00
Daniel P. Berrangé 83def04a25 pull in mingw sub-packages
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2022-08-09 09:18:37 -04:00
Cole Robinson 535bbcdd91 Use upstreamed 'glibc fix' commits
Signed-off-by: Cole Robinson <crobinso@redhat.com>
2022-08-04 15:58:25 -04:00
Cole Robinson 417e4c9cf7 Fix build with glibc 2.36
Signed-off-by: Cole Robinson <crobinso@redhat.com>
2022-08-01 15:35:19 -04:00
Cole Robinson 24d349fa37 libvirt-8.6.0-1
Update to version 8.6.0
2022-08-01 11:03:07 -04:00
Cole Robinson 9f3b22fec4 libvirt-8.5.0-1
Update to version 8.5.0
2022-07-21 06:30:56 -04:00
Cole Robinson 7285a57f5c Adjust for Xen dropping 32bit arches
Signed-off-by: Cole Robinson <crobinso@redhat.com>
2022-06-11 16:22:33 -04:00
Cole Robinson 9944fa190c libvirt-8.4.0-1
Update to version 8.4.0
2022-06-02 09:00:40 -04:00
Cole Robinson 1a44dca7d4 libvirt-8.3.0-1
Update to version 8.3.0
2022-05-02 12:22:09 -04:00
Cole Robinson 0c2262d602 libvirt-8.2.0-1
Update to version 8.2.0
2022-04-01 12:08:23 -04:00
Daniel P. Berrangé da598118cf Fix crash undefining VM without loader (rhbz#2060412)
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2022-03-03 17:54:17 +00:00
Cole Robinson da34e517db libvirt-8.1.0-1
Update to version 8.1.0
2022-03-01 08:50:53 -05:00
Richard W.M. Jones 7b17ccd035 Additional fix for building with new libxslt 2022-02-22 19:20:58 +00:00
Richard W.M. Jones 908a2f2a46 Include upstream patch which fixes virt-install bug. 2022-02-22 18:56:30 +00:00
Fedora Release Engineering acf19787de - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-01-20 17:34:26 +00:00
Cole Robinson c269619b9a libvirt-8.0.0-1
Update to version 8.0.0
2022-01-14 09:47:22 -05:00
Richard W.M. Jones 3f6336f446 Bump release and rebuild for new xen 2022-01-11 15:09:05 +00:00
Daniel P. Berrangé a552a10ec8 Update to 7.10.0 release
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-12-01 11:17:47 +00:00
Daniel P. Berrangé bfb8157052 Update to 7.9.0 release
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-11-02 11:01:17 +00:00
Richard W.M. Jones edb5200d83 Bump and rebuild for fixed glusterfs on arm (RHBZ#2018182) 2021-10-28 16:52:27 +01:00
Daniel P. Berrangé fe3f90dedd Update to 7.8.0 release
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-10-01 13:15:51 +01:00
Daniel P. Berrangé 437df85540 Update to 7.7.0 release
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-09-02 16:51:33 +01:00
Daniel P. Berrangé 2d6cbe6672 Fix unit file deps and qemu-img test compat
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-08-31 16:18:29 +01:00
Daniel P. Berrangé 97a323d7c2 Fix repeated word in scriptlet name
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-08-31 12:36:11 +01:00
Daniel P. Berrangé cb839d3dfc Fix conditionals for %post scripts
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-08-05 10:16:12 +01:00
Daniel P. Berrangé dc6b512f3c switch to use modular daemons by default
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-08-04 18:01:17 +01:00
Daniel P. Berrangé ac122f4525 Update to 7.6.0 release
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-08-02 11:51:56 +01:00
Richard W.M. Jones 7744acbb6b Fix -Dwerror=false
Libvirt builds were failing because of:

../src/util/virconf.c: In function ‘virConfGetValueStringList’:
../src/util/virconf.c:950:13: error: Not available before 2.60 [-Werror]
  950 |         G_GNUC_FALLTHROUGH;
      |             ^~~~~~~~~~~~~~~
cc1: all warnings being treated as errors

-Werror was being passed to GCC.

meson -Dwerror=false was being used which is supposed to disable
-Werror, but did not do so.

Apparently because of git being used to manage patches, libvirt thinks
it is being built from git so we need to use:

 -Dwerror=false -Dgit_werror=disabled

to really kill off -Werror.
2021-07-28 11:39:57 +01:00
Richard W.M. Jones 3807f07c15 Add fix for discard + copy-on-read affecting virt-v2v (RHBZ#1986509) 2021-07-28 10:38:30 +01:00
Fedora Release Engineering e484fdc92b - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-07-22 12:41:24 +00:00
Cole Robinson 6752fe8c9e libvirt-7.5.0-1
Update to version 7.5.0
2021-07-01 11:49:25 -04:00
Cole Robinson 15f52369ae libvirt-7.4.0-2
Rebuild for xen 4.14
2021-06-07 20:09:26 -04:00
Cole Robinson 65a0e26138 libvirt-7.4.0-1
Update to version 7.4.0
2021-06-01 09:41:31 -04:00
Daniel P. Berrangé 497e096592 Updatet to 7.3.0 release
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-05-04 11:54:16 +01:00
Cole Robinson 03a98aaf59 libvirt-7.2.0-1
Update to version 7.2.0
2021-04-05 12:51:44 -04:00
Richard W.M. Jones 5845f1efec Fix previous commit message, no change. 2021-03-09 13:37:30 +00:00
Richard W.M. Jones a8d01eb9d7 Bump and rebuild for libwsman_client.so.4 2021-03-09 13:26:35 +00:00
Cole Robinson 6d76ba5956 Fix 32bit compilation
Signed-off-by: Cole Robinson <crobinso@redhat.com>
2021-03-01 13:16:14 -05:00
Cole Robinson a11202d9e2 libvirt-7.1.0-1
Update to version 7.1.0
2021-03-01 10:11:49 -05:00
Cole Robinson bbfa59c8da Increase meson test timeout to fix builds on s390x copr
Signed-off-by: Cole Robinson <crobinso@redhat.com>
2021-02-03 14:23:33 -05:00
Laine Stump b97ad8956c Disable netcf backend for interface driver
Signed-off-by: Laine Stump <laine@redhat.com>
2021-02-02 12:47:35 -05:00
Fedora Release Engineering f9639a0012 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-01-26 18:16:33 +00:00
Daniel P. Berrangé c71e60c76c Rebase to 7.0.0 release
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-01-15 17:44:42 +00:00
Daniel P. Berrangé 9764121247 Cull 2019 vintage changelogs
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-01-05 18:12:21 +00:00
Cole Robinson a18ed3c492 Rebuild for wireshark soname bump
Signed-off-by: Cole Robinson <crobinso@redhat.com>
2020-12-04 10:25:53 -05:00
Richard W.M. Jones 9e2eeb32e3 Build libvirt-daemon-kvm for riscv64. 2020-12-04 11:38:09 +00:00
Cole Robinson 8bf91f5d22 libvirt-6.10.0-1
Update to version 6.10.0
2020-12-01 10:16:26 -05:00
Daniel P. Berrangé 91d8eff569 Re-apply reverted fix for disabling glusterfs, curl, openswman and libiscsi
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2020-11-04 09:13:29 +00:00
Cole Robinson a761ea338f libvirt-6.9.0-1
Update to version 6.9.0
2020-11-03 11:22:45 -05:00
Daniel P. Berrangé 7eef88add4 Really fix disabling glusterfs, curl, openwsman and libiscsi
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2020-11-02 12:50:07 +00:00
Daniel P. Berrangé 0c88a64234 Fix name of meson option for disabling glusterfs
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2020-11-02 11:09:26 +00:00
Daniel P. Berrangé c2f3be1f4d Fix stat() mocking for new glibc
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2020-10-30 15:36:08 +00:00
Daniel P. Berrangé 18b1c9d77e Fix disablement of libssh/libssh2 & remove obsolete conditions
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2020-10-28 14:52:45 +00:00
Cole Robinson 4528832026 Fix glib errors in virsystemdtest
Signed-off-by: Cole Robinson <crobinso@redhat.com>
2020-10-02 16:34:07 -04:00
Cole Robinson 037cd36ba2 libvirt-6.8.0-1
Update to version 6.8.0
2020-10-01 13:08:10 -04:00
Daniel P. Berrangé b94fb6a393 Fix QEMU start when KVM is not loaded (rhbz#1875327)
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2020-09-04 14:05:21 +01:00
Cole Robinson b0c05ac2ae libvirt-6.7.0-1
Update to version 6.7.0
2020-09-01 10:36:57 -04:00
Merlin Mathesius 15c305caf3 Fix so no platforms depend upon ceph for 32-bit architectures
Include upstream patches to fix GCC 10 warnings

Signed-off-by: Merlin Mathesius <mmathesi@redhat.com>
2020-08-21 11:28:09 -05:00
Daniel P. Berrangé bc1b3e59a7 Fix creation of pools on non-btrfs (rhbz#1870197)
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2020-08-21 11:47:16 +01:00
Daniel P. Berrangé 3c4492c415 Add a reminder to re-enable LTO in next release
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2020-08-07 17:30:14 +01:00
Cole Robinson fecc0295a2 libvirt-6.6.0-1
Update to version 6.6.0
2020-08-04 10:35:23 -04:00
Daniel P. Berrangé 325dc837c6 Disable LTO to avoid LD_PRELOAD breakage
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2020-08-03 15:31:10 +01:00
Fedora Release Engineering 5a45cb7f0d - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-07-28 05:51:41 +00:00
Cole Robinson 21269530e8 libvirt-6.5.0-1
Update to version 6.5.0
2020-07-03 10:01:57 -04:00
Cole Robinson fc18e983e7 libvirt-6.4.0-1
Update to version 6.4.0
2020-06-02 13:43:43 -04:00
Cole Robinson 4a7cc743a9 libvirt-6.3.0-1
Update to version 6.3.0
2020-05-05 19:33:44 -04:00
Cole Robinson 4398397311 libvirt-6.2.0-1
Update to version 6.2.0
2020-04-02 16:10:01 -04:00
Felipe Borges 401f9087bc libvirt-6.1.0-2.fc32
Check for disk type correctly in virDomainDiskTranslateSourcePool

Signed-off-by: Felipe Borges <feborges@redhat.com>
2020-03-24 11:34:46 +01:00
Cole Robinson dd3698988e libvirt-6.1.0-1.fc33
Update to version 6.1.0
2020-03-04 08:25:20 -05:00
Cole Robinson 3df49002c2 libvirt-6.0.0-3.fc33
Rebuild for libiscsi soname bump
2020-02-25 14:47:54 -05:00
Fedora Release Engineering 1bf0aedb9f - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-01-29 10:43:22 +00:00
Cole Robinson 79accd5a6e libvirt-6.0.0-1.fc32
Update to version 6.0.0
2020-01-15 11:17:10 -05:00
Adam Williamson 422d548fce Rebuild for new xen-libs 2019-12-19 09:02:02 -08:00
Daniel P. Berrangé 20ec6e955c Add abigail suppressions list
Stop abigail complaining about libvirt private symbols or any of the
loadable driver modules.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2019-12-03 18:01:54 +00:00
Cole Robinson 406a235cbc Fix test suite
Signed-off-by: Cole Robinson <crobinso@redhat.com>
2019-12-03 10:22:18 -05:00
Cole Robinson 4d15e56a38 libvirt-5.10.0-1.fc32
Update to version 5.10.0
2019-12-03 09:54:02 -05:00
Cole Robinson 8693111790 libvirt-5.9.0-1.fc32
Update to version 5.9.0
2019-11-11 13:36:07 -05:00
Cole Robinson 8461a521f2 libvirt-5.8.0-1.fc32
Update to version 5.8.0
2019-10-07 16:35:23 -04:00
Cole Robinson 511e2c5124 libvirt-5.7.0-3.fc32
Fix VM startup when legacy cgroups are defined (bz #1612383)
2019-09-26 15:47:05 -04:00
Daniel P. Berrangé 749dc3d3cb Fix systemd socket activation with TLS socket 2019-09-20 10:14:22 +01:00
Cole Robinson 73c9e38f2c Remove old Makefile
Signed-off-by: Cole Robinson <crobinso@redhat.com>
2019-09-17 10:54:06 -04:00
Cole Robinson afe8184d3f libvirt-5.7.0-1.fc32
Update to version 5.7.0
2019-09-03 12:35:57 -04:00
Cole Robinson 7d77bf76aa libvirt-5.6.0-1.fc31
Update to version 5.6.0
2019-08-06 13:23:41 -04:00
Fedora Release Engineering 7f0f1b831e - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2019-07-25 14:40:37 +00:00
Cole Robinson d964be0097 libvirt-5.5.0-1.fc31
Rebased to version 5.5.0
2019-07-03 11:25:28 -04:00
Cole Robinson a2479f539e libvirt-5.4.0-2.fc31
CVE-2019-10161: arbitrary file read/exec via virDomainSaveImageGetXMLDesc API (bz #1722463, bz #1720115)
CVE-2019-10166: virDomainManagedSaveDefineXML API exposed to readonly clients (bz #1722462, bz #1720114)
CVE-2019-10167: arbitrary command execution via virConnectGetDomainCapabilities API (bz #1722464, bz #1720117)
CVE-2019-10168: arbitrary command execution via virConnectBaselineHypervisorCPU and virConnectCompareHypervisorCPU APIs (bz #1722466, bz #1720118)
2019-06-20 12:30:57 -04:00
Daniel P. Berrangé c2c89ec6a3 Update to 5.4.0 release
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2019-06-12 11:29:13 +02:00
Daniel P. Berrangé d61e2404ba Fix systemd socket permissions (CVE-2019-10132)
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2019-05-21 16:58:15 +01:00
Daniel P. Berrangé a2be167dfe Define md-clear CPUID bit
CVE-2018-12126, CVE-2018-12127, CVE-2018-12130, CVE-2019-11091

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2019-05-14 19:17:13 +01:00
Daniel P. Berrangé 15ca09e1da Update to 5.3.0 release
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2019-05-07 14:50:34 +01:00
Cole Robinson 2cc07e6366 libvirt-5.2.0-2.fc31
Rebuild for xen 4.12 soname bump
2019-04-08 10:24:27 -04:00
Daniel P. Berrangé 4dd4fe78a4 Remove patch chunk touching Makefile.am
We don't need to run make dist from a build and the filename is broken
and would require re-running autotools anyway.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2019-04-03 13:59:48 +01:00
Daniel P. Berrangé 0bc22fb6f7 Remove patching on mock-noinline.pl which is missing in dist
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2019-04-03 11:47:23 +01:00
Daniel P. Berrangé 76097a6961 Add fix for mocking tests on 32-bit
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2019-04-03 11:35:55 +01:00
Daniel P. Berrangé 98cbf39fd3 Update to 5.2.0 release
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2019-04-03 11:06:44 +01:00
Daniel P. Berrangé d670e246d0 Fix rbd upgrade compat & deprecations and networking
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2019-03-20 17:42:59 +00:00
Igor Gnatenko 50e7b9a91d Remove obsolete scriptlets
Signed-off-by: Igor Gnatenko <ignatenkobrain@fedoraproject.org>
2019-03-06 09:47:43 +01:00
Daniel P. Berrangé 5cbc0451ce Update to 5.1.0 release
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2019-03-04 10:57:08 +00:00
Igor Gnatenko b420054636 Rebuild for readline 8.0 2019-02-17 09:30:51 +01:00
Fedora Release Engineering 143fedee46 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2019-02-01 08:30:03 +00:00
Daniel P. Berrangé 88887cac0f Update to 5.0.0 release
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2019-01-21 12:19:06 +00:00
Daniel P. Berrangé 579afc99f2 Disable RBD on 32-bit arches
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2018-12-10 18:33:58 +00:00
Daniel P. Berrangé 7f5808b9d0 Update to 4.10.0 release
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2018-12-03 13:55:36 +00:00
Daniel P. Berrangé 4df5f77071 Update to 4.9.0 release
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2018-11-12 14:53:44 +00:00
Daniel P. Berrangé 1bdd527daf Update to 4.8.0 release
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2018-10-05 14:25:26 +01:00
Daniel P. Berrangé e5fa1c00d2 Update to 4.7.0 release
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2018-09-04 10:43:47 +01:00
David Abdurachmanov 18f7b8c79c Add support for RISC-V (riscv64) 2018-08-19 19:41:56 +01:00
Daniel P. Berrangé 782468f8e9 Update to 4.6.0 release
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2018-08-06 14:07:24 +01:00
Fedora Release Engineering 202e7d9569 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2018-07-13 09:01:16 +00:00
Daniel P. Berrangé 0676a07265 Fix regressions in chardev handling
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2018-07-06 11:30:44 +01:00
Daniel P. Berrangé f57ce74947 Update to 4.5.0 release
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2018-07-03 11:00:57 +01:00
Daniel P. Berrangé 851cfde15b Fix typo in date
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2018-06-05 12:49:52 +01:00
Daniel P. Berrangé 06123137eb Update to 4.4.0 release
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2018-06-05 12:30:16 +01:00
Igor Gnatenko 6ccf3cb58c Remove %clean section
None of currently supported distributions need that.
Last one was EL5 which is EOL for a while.

Signed-off-by: Igor Gnatenko <ignatenkobrain@fedoraproject.org>
2018-05-07 09:38:07 +02:00
Igor Gnatenko 030ddaa4ef Remove BuildRoot definition
None of currently supported distributions need that.
It was needed last for EL5 which is EOL now

Signed-off-by: Igor Gnatenko <ignatenkobrain@fedoraproject.org>
2018-05-07 09:38:07 +02:00
Daniel P. Berrangé a8886736c4 Set wireshark plugin dir dynamically
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2018-05-03 12:26:11 +01:00
Daniel P. Berrangé 4fd635e537 Update to 4.3.0 release
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2018-05-03 10:55:46 +01:00
Daniel P. Berrangé 6210c457fc Update to 4.2.0 release
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2018-04-03 13:42:58 +01:00
Iryna Shcherbina 82926cfdf0 Update Python 2 dependency declarations to new packaging standards 2018-03-23 23:29:56 +01:00
Daniel P. Berrangé e7a3ca6f6b Fix systemd macro argument with line continuations (rhbz#1558648)
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2018-03-21 09:38:28 +00:00
Daniel P. Berrangé 1ae6f647b7 Upload 4.1.0 sources
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2018-03-05 13:36:35 +00:00
Daniel P. Berrangé 48941c011f Rebase to version 4.1.0
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2018-03-05 13:31:54 +00:00
Igor Gnatenko a3c4cc6f3d Remove %clean section
None of currently supported distributions need that.
Last one was EL5 which is EOL for a while.

Signed-off-by: Igor Gnatenko <ignatenkobrain@fedoraproject.org>
2018-02-14 09:28:07 +01:00
Igor Gnatenko 90fbcbd48f Remove BuildRoot definition
None of currently supported distributions need that.
It was needed last for EL5 which is EOL now

Signed-off-by: Igor Gnatenko <ignatenkobrain@fedoraproject.org>
2018-02-13 23:44:12 +01:00
Fedora Release Engineering 6efd96d995 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2018-02-07 23:38:57 +00:00
Daniel P. Berrange 21316e7a45 Avoid undefined symbols from new linker flags
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2018-01-23 13:01:06 +00:00
Daniel P. Berrange 8adbb7a402 Cull changelog before 2017
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2018-01-19 17:34:53 +00:00
Daniel P. Berrange 3f19d41908 Fix rpc package name
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2018-01-19 16:37:43 +00:00
Daniel P. Berrange 34da93e0c9 Fix typos
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2018-01-19 16:30:19 +00:00
Daniel P. Berrange 208f506190 Add rpcgen + tirpc-devel dependancies
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2018-01-19 16:28:25 +00:00
Daniel P. Berrange 0ca715cad9 Update to version 4.0.0
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2018-01-19 16:14:30 +00:00
Cole Robinson 0f5d8c1c22 Rebuild for xen 4.10 2017-12-20 07:05:15 -05:00
Daniel P. Berrange a56bcbd063 Update to 3.10.0 release
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2017-12-05 11:11:01 +00:00
Daniel P. Berrange 89c3fa751c Update to 3.9.0 release
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2017-11-03 11:14:48 +00:00
Daniel P. Berrange 051644ffcb Update to 3.8.0 release
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2017-10-04 14:46:26 +01:00
Daniel P. Berrange 2a9c282548 Update to 3.7.0 release
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2017-09-04 11:33:13 +01:00
Daniel P. Berrange 2ae80af461 Disable qemumonitorjsontest temporarily
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2017-08-04 10:30:58 +01:00
Daniel P. Berrange 7335ede0e1 Rebase to 3.6.0
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2017-08-02 10:47:35 +01:00
Florian Weimer 6c92ba3805 Rebuild with fixed binutils for ppc64le (#1475636) 2017-07-30 19:09:40 +02:00
Daniel P. Berrange 446f680673 Disabled RBD on i386, arm, ppc64 (rhbz #1474743)
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2017-07-25 11:11:19 +01:00
Daniel P. Berrange 3f56aa2870 Rebuild for changed rbd soname
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2017-07-25 09:14:27 +01:00
Cole Robinson 3cec91694f Remove unused patch 2017-07-17 09:01:37 -04:00
Cole Robinson cb0cfa566f Rebuild for xen 4.9 2017-07-17 09:00:52 -04:00
Petr Písař a27acebf66 perl dependency renamed to perl-interpreter <https://fedoraproject.org/wiki/Changes/perl_Package_to_Install_Core_Modules> 2017-07-12 15:20:34 +02:00
Daniel P. Berrange 99d3a0ca1a Update to 3.5.0 release
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2017-07-06 15:32:03 +01:00
Daniel P. Berrange 9c962ebc4f Add patch to fix gnulib build
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2017-06-05 11:13:10 +01:00
Daniel P. Berrange 99cbbf6606 Fix clash between gnulib and glibc system headers
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2017-06-05 11:11:32 +01:00
Daniel P. Berrange b73e509648 Update to 3.4.0 release
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2017-06-02 12:08:34 +01:00
Daniel P. Berrange b23ff9c0f7 Update to 3.3.0 release
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2017-05-08 10:45:19 +01:00
Cole Robinson 20f9ed9c4c Remove unused patch 2017-05-04 20:10:10 -04:00
Daniel P. Berrange 04cb28c315 Update to 3.2.0 release
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2017-04-03 14:30:13 +01:00
Daniel P. Berrange a74ea318d1 Update to 3.1.0 release
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2017-03-03 16:48:12 +00:00
Fedora Release Engineering 98ed6b4e36 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild 2017-02-10 19:39:29 +00:00
Daniel P. Berrange 2c49d1fd11 Update to 3.0.0 release
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2017-01-19 10:16:16 +00:00
Igor Gnatenko 6e7bca6631 Rebuild for readline 7.x
Signed-off-by: Igor Gnatenko <ignatenko@redhat.com>
2017-01-12 17:30:33 +01:00
Daniel P. Berrange 2fe145bb02 Rebuild to pick up new libxen* soname
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2016-12-08 18:31:20 +00:00
Daniel P. Berrange 10b7d235e3 Temp hack for gnutls 3.5.6 regression
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2016-12-05 12:06:04 +00:00
Daniel P. Berrange 232e2e7de2 Add workaround for wireshark-devel brokeness yet again
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2016-12-05 11:21:03 +00:00
Daniel P. Berrange fb1e4b061e Kill changeog entries prior to 2015
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2016-12-05 10:07:41 +00:00
Daniel P. Berrange 0b1a013081 Update to 2.5.0 release
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2016-12-05 10:06:54 +00:00
Daniel P. Berrange a972457f43 Update to 2.4.0 release
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2016-11-02 09:20:09 +00:00
Daniel P. Berrange 67cfa34a05 Update to 2.3.0 release 2016-10-06 11:42:08 +01:00
Daniel P. Berrange fc2ebb7646 Update to 2.2.0 release
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2016-09-05 12:42:42 +01:00
Daniel P. Berrange e92b461b4f Upload 2.1.0 tar
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2016-08-02 15:12:35 +01:00
Daniel P. Berrange b1ac7b5791 Rebase to 2.1.0
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2016-08-02 15:11:55 +01:00
Richard W.M. Jones 88424efe85 Rebuild to attempt to fix 'nothing provides libxenctrl.so.4.6()(64bit) needed
by libvirt-daemon-2.0.0-1.fc25.x86_64'
2016-07-23 16:35:53 +01:00
Daniel P. Berrange 4e2aab98a2 Add deps on systemd-container 2016-07-13 17:50:00 +01:00
Daniel P. Berrange f4bc1a2fe2 Disable wireshark 2016-07-01 11:21:55 +01:00
Daniel P. Berrange a4bf2768b8 Update to 2.0.0 release 2016-07-01 10:43:53 +01:00
Richard W.M. Jones 47cd44e9da Rebuild against new glibc
(see https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/VUOTESHSWFRCYPXIVG6BSMAUITS7QCK2/).
2016-06-13 14:29:22 +01:00
Daniel P. Berrange 731c6b90ff Add patch to avoid building against libsystemd-daemon.so
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2016-06-07 09:48:24 +01:00
Daniel P. Berrange 47ca46905d Rebase to 1.3.5
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2016-06-06 11:46:44 +01:00
Cole Robinson 860ffc5b13 Fix libxl video config via virt-install (bz #1334557)
Advertise fedora edk2 firmware builds to apps (bz #1335395)
2016-05-20 16:37:26 -04:00
Cole Robinson 611b2ee520 Rebased to version 1.3.4 2016-05-02 20:22:05 -04:00
Richard W.M. Jones edcb926f9d Fix 200ms performance problem when waiting for monitor socket of new domains. 2016-04-19 11:53:54 +01:00
Cole Robinson caebff8304 Re-run autotools, since patches touch configure 2016-04-15 06:23:13 -04:00
Cole Robinson 8fa41135ca libvirt assigns same address to two PCI devices (bz #1325085)
Fix build with -Werror
2016-04-14 19:46:33 -04:00
Cole Robinson 0debbff964 Rebased to version 1.3.3 2016-04-07 09:55:06 -04:00
Cole Robinson d6cc78be66 Fix qemu:///session disconnect after 30 seconds
Fix 'permission denied' errors trying to unlink disk images (bz #1289327)
Fix qemu:///session connect race failures (bz #1271183)
driver: log missing modules as INFO, not WARN (bz #1274849)
2016-03-17 17:38:30 -04:00
Richard W.M. Jones 8d9645735e Add fix for RHBZ#1315606. 2016-03-09 14:51:59 +00:00
Daniel P. Berrange 4c65f08330 Update to 1.3.2 release
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2016-03-01 14:26:53 +00:00
Daniel P. Berrange 2427f8f078 Re-enable wireshark 2016-02-24 22:23:39 +00:00
Dennis Gilmore d168e4f934 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild 2016-02-04 04:06:44 +00:00
Daniel P. Berrange 4dd365589f Disable wireshark due to https://bugzilla.redhat.com/show_bug.cgi?id=1300002 2016-01-19 17:44:37 +00:00
Daniel P. Berrange 50e253df29 Update to 1.3.1 release 2016-01-19 14:44:36 +00:00
Daniel P. Berrange cb71801a2b Add patch to fix 32-bit test suite check
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2015-12-11 12:15:31 +00:00
Daniel P. Berrange 4a9c74e91d Update to 1.3.0 release 2015-12-09 20:53:57 +00:00
Daniel P. Berrange 281508ec99 Update to 1.2.21 release
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2015-11-11 10:01:32 +00:00
Cole Robinson feb92626e1 Rebuild for xen 4.6 2015-10-11 16:08:21 -04:00
Daniel P. Berrange 93cadb0880 Update to 1.2.20 release 2015-10-02 15:58:35 +01:00
Daniel P. Berrange dd6b57aa60 Update to 1.2.19 release 2015-09-02 12:52:54 +01:00
Daniel P. Berrange b8cb754e9d Add workaround for //bugzilla.redhat.com/show_bug.cgi?id=1250020 2015-08-04 12:29:04 +01:00
Daniel P. Berrange dbe61507bd Update to 1.2.18 release 2015-08-04 09:50:35 +01:00
Richard W.M. Jones ce7b23d9d0 Fix 'Cannot write data: Broken pipe [code=38 domain=7]' (RHBZ#1247746). 2015-07-29 11:35:59 +01:00
Cole Robinson 8ded6ff93e Fix dep for f23 polkit packaging changes 2015-07-14 14:05:12 -04:00
Cole Robinson 1ef96f3488 Disable test suite, currently crashing on i686 2015-07-14 12:42:13 -04:00
Cole Robinson ee3bf37900 Update spec for 1.2.17 2015-07-14 12:23:04 -04:00
Peter Robinson 7452a06938 Rebuild (aarch64) 2015-07-12 22:27:12 +01:00
Daniel Veillard fe8f9ed9c4 Upstream release 1.2.17 2015-07-02 13:40:30 +08:00
Daniel P. Berrange 1b64f74c82 Rebuild for libwsman soname change
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2015-06-16 14:49:54 +01:00
Daniel P. Berrange c81949046d Update to 1.2.16 release 2015-06-01 10:05:32 +01:00
Daniel Veillard 19dcb913e6 Upstream release 1.2.16 2015-06-01 10:49:59 +08:00
Richard W.M. Jones e4b5ba1a9d Add Cole Robinson's patch to fix arch selection (bz# 1219198, bz#1219191) 2015-05-07 15:08:12 +01:00
Cole Robinson 5f1a422d83 Rebased to version 1.2.15 2015-05-04 13:28:39 -04:00
Cole Robinson c5b0b3ef9d Fix LXC domain startup (bz #1210397)
Fix race starting multiple session daemons (bz #1200149)
Fix change-media success messages
Strip invalid control codes from XML (bz #1066564, bz #1184131)
2015-04-15 14:40:41 -04:00
Cole Robinson c0a04cb876 Rebased to version 1.2.14 2015-04-02 12:44:09 -04:00
Daniel Veillard 3cc7cdf12f Upstream release 1.2.14 2015-04-02 15:56:44 +08:00
23 changed files with 2456 additions and 3236 deletions
+31
View File
@@ -0,0 +1,31 @@
[suppress_function]
symbol_version_regexp = LIBVIRT_PRIVATE.*
soname_regexp = libvirt\\.so.*
[suppress_function]
symbol_version_regexp = LIBVIRT_ADMIN_PRIVATE.*
soname_regexp = libvirt-admin\\.so.*
[suppress_variable]
symbol_version_regexp = LIBVIRT_PRIVATE.*
soname_regexp = libvirt\\.so.*
[suppress_variable]
symbol_version_regexp = LIBVIRT_ADMIN_PRIVATE.*
soname_regexp = libvirt-admin\\.so.*
[suppress_function]
symbol_version_regexp = .*
soname_regexp = libvirt_storage_.*\\.so.*
[suppress_variable]
symbol_version_regexp = .*
soname_regexp = libvirt_storage_.*\\.so.*
[suppress_function]
symbol_version_regexp = .*
soname_regexp = libvirt_driver_.*\\.so.*
[suppress_variable]
symbol_version_regexp = .*
soname_regexp = libvirt_driver_.*\\.so.*
+1 -1
View File
@@ -2,4 +2,4 @@
*.rpm
i686
x86_64
libvirt-*.tar.gz
libvirt-*.tar.xz
@@ -0,0 +1,41 @@
From 3499354e12a1c1832bf4030693a64e03ceb79d05 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
Date: Wed, 5 Jun 2024 11:16:21 +0100
Subject: [PATCH] interface: fix udev reference leak with invalid flags
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
The udevInterfaceGetXMLDesc method takes a reference on the udev
driver as its first action. If the virCheckFlags() condition
fails, however, this reference is never released.
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
---
src/interface/interface_backend_udev.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/interface/interface_backend_udev.c b/src/interface/interface_backend_udev.c
index fdf11a8318..e1a50389c9 100644
--- a/src/interface/interface_backend_udev.c
+++ b/src/interface/interface_backend_udev.c
@@ -1027,12 +1027,14 @@ static char *
udevInterfaceGetXMLDesc(virInterfacePtr ifinfo,
unsigned int flags)
{
- struct udev *udev = udev_ref(driver->udev);
+ struct udev *udev = NULL;
g_autoptr(virInterfaceDef) ifacedef = NULL;
char *xmlstr = NULL;
virCheckFlags(VIR_INTERFACE_XML_INACTIVE, NULL);
+ udev = udev_ref(driver->udev);
+
/* Recursively build up the interface XML based on the requested
* interface name
*/
--
2.45.1
@@ -0,0 +1,49 @@
From 98f1cf88fa7e0f992d93f376418fbfb3996a9690 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
Date: Fri, 17 May 2024 14:55:24 +0100
Subject: [PATCH] rpc: avoid leak of GSource in use for interrupting main loop
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
We never release the reference on the GSource created for
interrupting the main loop, nor do we remove it from the
main context if our thread is woken up prior to the wakeup
callback firing.
This can result in a leak of GSource objects, along with an
ever growing list of GSources attached to the main context,
which will gradually slow down execution of the loop, as
several operations are O(N) for the number of attached GSource
objects.
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
---
src/rpc/virnetclient.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/rpc/virnetclient.c b/src/rpc/virnetclient.c
index 147b0d661a..6d424eb599 100644
--- a/src/rpc/virnetclient.c
+++ b/src/rpc/virnetclient.c
@@ -1946,7 +1946,7 @@ static int virNetClientIO(virNetClient *client,
/* Check to see if another thread is dispatching */
if (client->haveTheBuck) {
/* Force other thread to wakeup from poll */
- GSource *wakeup = g_idle_source_new();
+ g_autoptr(GSource) wakeup = g_idle_source_new();
g_source_set_callback(wakeup, virNetClientIOWakeup, client->eventLoop, NULL);
g_source_attach(wakeup, client->eventCtx);
@@ -1968,6 +1968,7 @@ static int virNetClientIO(virNetClient *client,
return -1;
}
+ g_source_destroy(wakeup);
VIR_DEBUG("Woken up from sleep head=%p call=%p",
client->waitDispatch, thiscall);
/* Three reasons we can be woken up
--
2.45.1
@@ -0,0 +1,99 @@
From 8074d64dc2eca846d6a61efe1a9b7428a0ce1dd1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
Date: Tue, 30 Apr 2024 11:51:15 +0100
Subject: [PATCH] rpc: ensure temporary GSource is removed from client event
loop
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Users are seeing periodic segfaults from libvirt client apps,
especially thread heavy ones like virt-manager. A typical
stack trace would end up in the virNetClientIOEventFD method,
with illegal access to stale stack data. eg
==238721==ERROR: AddressSanitizer: stack-use-after-return on address 0x75cd18709788 at pc 0x75cd3111f907 bp 0x75cd181ff550 sp 0x75cd181ff548
WRITE of size 4 at 0x75cd18709788 thread T11
#0 0x75cd3111f906 in virNetClientIOEventFD /usr/src/debug/libvirt/libvirt-10.2.0/build/../src/rpc/virnetclient.c:1634:15
#1 0x75cd3210d198 (/usr/lib/libglib-2.0.so.0+0x5a198) (BuildId: 0a2311dfbbc6c215dc36f4b6bdd2b4b6fbae55a2)
#2 0x75cd3216c3be (/usr/lib/libglib-2.0.so.0+0xb93be) (BuildId: 0a2311dfbbc6c215dc36f4b6bdd2b4b6fbae55a2)
#3 0x75cd3210ddc6 in g_main_loop_run (/usr/lib/libglib-2.0.so.0+0x5adc6) (BuildId: 0a2311dfbbc6c215dc36f4b6bdd2b4b6fbae55a2)
#4 0x75cd3111a47c in virNetClientIOEventLoop /usr/src/debug/libvirt/libvirt-10.2.0/build/../src/rpc/virnetclient.c:1722:9
#5 0x75cd3111a47c in virNetClientIO /usr/src/debug/libvirt/libvirt-10.2.0/build/../src/rpc/virnetclient.c:2002:10
#6 0x75cd3111a47c in virNetClientSendInternal /usr/src/debug/libvirt/libvirt-10.2.0/build/../src/rpc/virnetclient.c:2170:11
#7 0x75cd311198a8 in virNetClientSendWithReply /usr/src/debug/libvirt/libvirt-10.2.0/build/../src/rpc/virnetclient.c:2198:11
#8 0x75cd31111653 in virNetClientProgramCall /usr/src/debug/libvirt/libvirt-10.2.0/build/../src/rpc/virnetclientprogram.c:318:9
#9 0x75cd31241c8f in callFull /usr/src/debug/libvirt/libvirt-10.2.0/build/../src/remote/remote_driver.c:6054:10
#10 0x75cd31241c8f in call /usr/src/debug/libvirt/libvirt-10.2.0/build/../src/remote/remote_driver.c:6076:12
#11 0x75cd31241c8f in remoteNetworkGetXMLDesc /usr/src/debug/libvirt/libvirt-10.2.0/build/src/remote/remote_client_bodies.h:5959:9
#12 0x75cd31410ff7 in virNetworkGetXMLDesc /usr/src/debug/libvirt/libvirt-10.2.0/build/../src/libvirt-network.c:952:15
The root cause is a bad assumption in the virNetClientIOEventLoop
method. This method is run by whichever thread currently owns the
buck, and is responsible for handling I/O. Inside a for(;;) loop,
this method creates a temporary GSource, adds it to the event loop
and runs g_main_loop_run(). When I/O is ready, the GSource callback
(virNetClientIOEventFD) will fire and call g_main_loop_quit(), and
return G_SOURCE_REMOVE which results in the temporary GSource being
destroyed. A g_autoptr() will then remove the last reference.
What was overlooked, is that a second thread can come along and
while it can't enter virNetClientIOEventLoop, it will register an
idle source that uses virNetClientIOWakeup to interrupt the
original thread's 'g_main_loop_run' call. When this happens the
virNetClientIOEventFD callback never runs, and so the temporary
GSource is not destroyed. The g_autoptr() will remove a reference,
but by virtue of still being attached to the event context, there
is an extra reference held causing GSource to be leaked. The
next time 'g_main_loop_run' is called, the original GSource will
trigger its callback, and access data that was allocated on the
stack by the previous thread, and likely SEGV.
To solve this, the thread calling 'g_main_loop_run' must call
g_source_destroy, immediately upon return, to guarantee that
the temporary GSource is removed.
CVE-2024-4418
Reviewed-by: Ján Tomko <jtomko@redhat.com>
Reported-by: Martin Shirokov <shirokovmartin@gmail.com>
Tested-by: Martin Shirokov <shirokovmartin@gmail.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
---
src/rpc/virnetclient.c | 14 +++++++++++++-
1 file changed, 13 insertions(+), 1 deletion(-)
diff --git a/src/rpc/virnetclient.c b/src/rpc/virnetclient.c
index 68098b1c8d..147b0d661a 100644
--- a/src/rpc/virnetclient.c
+++ b/src/rpc/virnetclient.c
@@ -1657,7 +1657,7 @@ static int virNetClientIOEventLoop(virNetClient *client,
#endif /* !WIN32 */
int timeout = -1;
virNetMessage *msg = NULL;
- g_autoptr(GSource) G_GNUC_UNUSED source = NULL;
+ g_autoptr(GSource) source = NULL;
GIOCondition ev = 0;
struct virNetClientIOEventData data = {
.client = client,
@@ -1721,6 +1721,18 @@ static int virNetClientIOEventLoop(virNetClient *client,
g_main_loop_run(client->eventLoop);
+ /*
+ * If virNetClientIOEventFD ran, this GSource will already be
+ * destroyed due to G_SOURCE_REMOVE. It is harmless to re-destroy
+ * it, since we still own a reference.
+ *
+ * If virNetClientIOWakeup ran, it will have interrupted the
+ * g_main_loop_run call, before virNetClientIOEventFD could
+ * run, and thus the GSource is still registered, and we need
+ * to destroy it since it is referencing stack memory for 'data'
+ */
+ g_source_destroy(source);
+
#ifndef WIN32
ignore_value(pthread_sigmask(SIG_SETMASK, &oldmask, NULL));
#endif /* !WIN32 */
--
2.45.1
@@ -1,38 +0,0 @@
From: =?UTF-8?q?J=C3=A1n=20Tomko?= <jtomko@redhat.com>
Date: Thu, 17 Dec 2015 13:43:58 +0100
Subject: [PATCH] schema: interleave domain name and uuid with other elements
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Allow <name> and <uuid> anywhere under <domain>, not just at the top:
error:XML document failed to validate against schema: Unable to validate
doc against /usr/share/libvirt/schemas/domain.rng
Expecting an element name, got nothing
Invalid sequence in interleave
Element domain failed to validate content
Introduced with the first RelaxNG schema in commit c642103.
https://bugzilla.redhat.com/show_bug.cgi?id=1292131
(cherry picked from commit b4e0549febe416ffefc16f389423740d6d65fa74)
Signed-off-by: Ján Tomko <jtomko@redhat.com>
---
docs/schemas/domaincommon.rng | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/docs/schemas/domaincommon.rng b/docs/schemas/domaincommon.rng
index b252a17..48610ce 100644
--- a/docs/schemas/domaincommon.rng
+++ b/docs/schemas/domaincommon.rng
@@ -30,8 +30,8 @@
<define name="domain">
<element name="domain">
<ref name="hvs"/>
- <ref name="ids"/>
<interleave>
+ <ref name="ids"/>
<optional>
<ref name="title"/>
</optional>
@@ -0,0 +1,35 @@
From adfdb79f1e01401349e1321d0f5059d7b6489f00 Mon Sep 17 00:00:00 2001
Message-ID: <adfdb79f1e01401349e1321d0f5059d7b6489f00.1724763718.git.crobinso@redhat.com>
From: Martin Kletzander <mkletzan@redhat.com>
Date: Fri, 16 Aug 2024 13:56:51 +0200
Subject: [PATCH 1/3] virarptable: Properly calculate rtattr length
Content-type: text/plain
Use convenience macro which does almost the same thing we were doing,
but also pads out the payload length to a multiple of NLMSG_ALIGNTO (4)
bytes.
Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
Reviewed-by: Laine Stump <laine@redhat.com>
Signed-off-by: Cole Robinson <crobinso@redhat.com>
---
src/util/virarptable.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/src/util/virarptable.c b/src/util/virarptable.c
index 299dddd664..d8e41c5a86 100644
--- a/src/util/virarptable.c
+++ b/src/util/virarptable.c
@@ -102,8 +102,7 @@ virArpTableGet(void)
return table;
VIR_WARNINGS_NO_CAST_ALIGN
- parse_rtattr(tb, NDA_MAX, NDA_RTA(r),
- nh->nlmsg_len - NLMSG_LENGTH(sizeof(*r)));
+ parse_rtattr(tb, NDA_MAX, NDA_RTA(r), NLMSG_PAYLOAD(nh, sizeof(*r)));
VIR_WARNINGS_RESET
if (tb[NDA_DST] == NULL || tb[NDA_LLADDR] == NULL)
--
2.46.0
@@ -1,32 +0,0 @@
From: =?UTF-8?q?J=C3=A1n=20Tomko?= <jtomko@redhat.com>
Date: Thu, 14 Jan 2016 14:31:17 +0100
Subject: [PATCH] leaseshelper: fix crash when no mac is specified
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
If dnsmasq specified DNSMASQ_IAID (so we're dealing with an IPv6
lease) but no DNSMASQ_MAC, we skip creation of the new lease object.
Also skip adding it to the leases array.
https://bugzilla.redhat.com/show_bug.cgi?id=1202350
(cherry picked from commit df9fe124d650bc438c531673492569da87523d20)
Signed-off-by: Ján Tomko <jtomko@redhat.com>
---
src/network/leaseshelper.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/network/leaseshelper.c b/src/network/leaseshelper.c
index 2d528f7..6930310 100644
--- a/src/network/leaseshelper.c
+++ b/src/network/leaseshelper.c
@@ -439,7 +439,7 @@ main(int argc, char **argv)
case VIR_LEASE_ACTION_OLD:
case VIR_LEASE_ACTION_ADD:
- if (virJSONValueArrayAppend(leases_array_new, lease_new) < 0) {
+ if (lease_new && virJSONValueArrayAppend(leases_array_new, lease_new) < 0) {
virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
_("failed to create json"));
goto cleanup;
@@ -0,0 +1,42 @@
From 137779b894858bd958ea575cec260a0559b31e48 Mon Sep 17 00:00:00 2001
Message-ID: <137779b894858bd958ea575cec260a0559b31e48.1724763718.git.crobinso@redhat.com>
In-Reply-To: <adfdb79f1e01401349e1321d0f5059d7b6489f00.1724763718.git.crobinso@redhat.com>
References: <adfdb79f1e01401349e1321d0f5059d7b6489f00.1724763718.git.crobinso@redhat.com>
From: Martin Kletzander <mkletzan@redhat.com>
Date: Fri, 16 Aug 2024 13:59:15 +0200
Subject: [PATCH 2/3] virarptable: Fix check for message length
Content-type: text/plain
The previous check was all wrong since it calculated the how long would
the netlink message be if the netlink header was the payload and then
subtracted that from the whole message length, a variable that was not
used later in the code. This check can fail if there are no additional
payloads, struct rtattr in particular, which we are parsing later,
however the RTA_OK macro would've caught that anyway.
Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
Reviewed-by: Laine Stump <laine@redhat.com>
Signed-off-by: Cole Robinson <crobinso@redhat.com>
---
src/util/virarptable.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/src/util/virarptable.c b/src/util/virarptable.c
index d8e41c5a86..45ee76766f 100644
--- a/src/util/virarptable.c
+++ b/src/util/virarptable.c
@@ -81,10 +81,9 @@ virArpTableGet(void)
for (; NLMSG_OK(nh, msglen); nh = NLMSG_NEXT(nh, msglen)) {
VIR_WARNINGS_RESET
struct ndmsg *r = NLMSG_DATA(nh);
- int len = nh->nlmsg_len;
void *addr;
- if ((len -= NLMSG_LENGTH(sizeof(*nh))) < 0) {
+ if (nh->nlmsg_len < NLMSG_SPACE(sizeof(*r))) {
virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
_("wrong nlmsg len"));
goto cleanup;
--
2.46.0
@@ -1,63 +0,0 @@
From: Cole Robinson <crobinso@redhat.com>
Date: Tue, 19 Jan 2016 22:19:56 -0500
Subject: [PATCH] build: predictably generate systemtap tapsets (bz 1173641)
The generated output is dependent on perl hashtable ordering, which
gives different results for i686 and x86_64. Fix this by sorting
the hash keys before iterating over them
https://bugzilla.redhat.com/show_bug.cgi?id=1173641
(cherry picked from commit a1edb05c6028470aa24b74aa0f8d5fb5a181128a)
---
src/rpc/gensystemtap.pl | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/src/rpc/gensystemtap.pl b/src/rpc/gensystemtap.pl
index 2467300..7b80fbf 100755
--- a/src/rpc/gensystemtap.pl
+++ b/src/rpc/gensystemtap.pl
@@ -72,7 +72,7 @@ function libvirt_rpc_auth_name(type, verbose)
{
EOF
my $first = 1;
-foreach my $type (keys %auth) {
+foreach my $type (sort(keys %auth)) {
my $cond = $first ? "if" : "} else if";
$first = 0;
print " $cond (type == ", $type, ") {\n";
@@ -95,7 +95,7 @@ function libvirt_rpc_type_name(type, verbose)
{
EOF
$first = 1;
-foreach my $type (keys %type) {
+foreach my $type (sort(keys %type)) {
my $cond = $first ? "if" : "} else if";
$first = 0;
print " $cond (type == ", $type, ") {\n";
@@ -118,7 +118,7 @@ function libvirt_rpc_status_name(status, verbose)
{
EOF
$first = 1;
-foreach my $status (keys %status) {
+foreach my $status (sort(keys %status)) {
my $cond = $first ? "if" : "} else if";
$first = 0;
print " $cond (status == ", $status, ") {\n";
@@ -141,7 +141,7 @@ function libvirt_rpc_program_name(program, verbose)
{
EOF
$first = 1;
-foreach my $prog (keys %funcs) {
+foreach my $prog (sort(keys %funcs)) {
my $cond = $first ? "if" : "} else if";
$first = 0;
print " $cond (program == ", $funcs{$prog}->{id}, ") {\n";
@@ -165,7 +165,7 @@ function libvirt_rpc_procedure_name(program, version, proc, verbose)
{
EOF
$first = 1;
-foreach my $prog (keys %funcs) {
+foreach my $prog (sort(keys %funcs)) {
my $cond = $first ? "if" : "} else if";
$first = 0;
print " $cond (program == ", $funcs{$prog}->{id}, " && version == ", $funcs{$prog}->{version}, ") {\n";
@@ -0,0 +1,54 @@
From df2cefb31dab2fa56e0864fbd2b8ad468dee22c0 Mon Sep 17 00:00:00 2001
Message-ID: <df2cefb31dab2fa56e0864fbd2b8ad468dee22c0.1724763718.git.crobinso@redhat.com>
In-Reply-To: <adfdb79f1e01401349e1321d0f5059d7b6489f00.1724763718.git.crobinso@redhat.com>
References: <adfdb79f1e01401349e1321d0f5059d7b6489f00.1724763718.git.crobinso@redhat.com>
From: Martin Kletzander <mkletzan@redhat.com>
Date: Fri, 16 Aug 2024 14:02:48 +0200
Subject: [PATCH 3/3] virarptable: End parsing earlier in case of NLMSG_DONE
Content-type: text/plain
Check for the last multipart message right as the first thing. The
presumption probably was that the last message might still contain a
payload we want to parse. However that cannot be true since that would
have to be a type RTM_NEWNEIGH. This was not caught because older
kernels were note sending NLMSG_DONE and probably relied on the fact
that the parsing just stops after all the messages are walked through,
which the NLMSG_OK macro successfully did.
Resolves: https://issues.redhat.com/browse/RHEL-52449
Resolves: https://bugzilla.redhat.com/2302245
Fixes: a176d67cdfaf5b8237a7e3a80d8be0e6bdf2d8fd
Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
Reviewed-by: Laine Stump <laine@redhat.com>
Signed-off-by: Cole Robinson <crobinso@redhat.com>
---
src/util/virarptable.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/util/virarptable.c b/src/util/virarptable.c
index 45ee76766f..20d11f97b0 100644
--- a/src/util/virarptable.c
+++ b/src/util/virarptable.c
@@ -83,6 +83,9 @@ virArpTableGet(void)
struct ndmsg *r = NLMSG_DATA(nh);
void *addr;
+ if (nh->nlmsg_type == NLMSG_DONE)
+ break;
+
if (nh->nlmsg_len < NLMSG_SPACE(sizeof(*r))) {
virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
_("wrong nlmsg len"));
@@ -97,9 +100,6 @@ virArpTableGet(void)
(!(r->ndm_state == NUD_STALE || r->ndm_state == NUD_REACHABLE)))
continue;
- if (nh->nlmsg_type == NLMSG_DONE)
- return table;
-
VIR_WARNINGS_NO_CAST_ALIGN
parse_rtattr(tb, NDA_MAX, NDA_RTA(r), NLMSG_PAYLOAD(nh, sizeof(*r)));
VIR_WARNINGS_RESET
--
2.46.0
@@ -1,30 +0,0 @@
From: "Daniel P. Berrange" <berrange@redhat.com>
Date: Fri, 3 Jul 2015 16:51:56 +0100
Subject: [PATCH] rpc: ensure daemon is spawn even if dead socket exists
The auto-spawn code would originally attempt to spawn the
daemon for both ENOENT and ECONNREFUSED errors from connect().
The various refactorings eventually lost this so we only
spawn the daemon on ENOENT. The result is if the daemon exits
uncleanly, so that the socket is left in the filesystem, we
will never be able to auto-spawn the daemon again.
(cherry picked from commit 406ee8c226d2197ba1aaecb9cf3ad2b6df31ae44)
---
src/rpc/virnetsocket.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/rpc/virnetsocket.c b/src/rpc/virnetsocket.c
index 51f94d4..6153e0e 100644
--- a/src/rpc/virnetsocket.c
+++ b/src/rpc/virnetsocket.c
@@ -610,7 +610,8 @@ int virNetSocketNewConnectUNIX(const char *path,
while (retries &&
connect(fd, &remoteAddr.data.sa, remoteAddr.len) < 0) {
- if (!(spawnDaemon && errno == ENOENT)) {
+ if (!(spawnDaemon && (errno == ENOENT ||
+ errno == ECONNREFUSED))) {
virReportSystemError(errno, _("Failed to connect socket to '%s'"),
path);
goto cleanup;
-48
View File
@@ -1,48 +0,0 @@
From: Cole Robinson <crobinso@redhat.com>
Date: Mon, 11 Jan 2016 20:01:24 -0500
Subject: [PATCH] rpc: socket: Minor cleanups
- Add some debugging
- Make the loop dependent only on retries
- Make it explicit that connect(2) success exits the loop
- Invert the error checking logic
(cherry picked from commit f102c7146ed7f6e04af0ad3bce302476239f2502)
---
src/rpc/virnetsocket.c | 16 ++++++++++++----
1 file changed, 12 insertions(+), 4 deletions(-)
diff --git a/src/rpc/virnetsocket.c b/src/rpc/virnetsocket.c
index 6153e0e..dcff69e 100644
--- a/src/rpc/virnetsocket.c
+++ b/src/rpc/virnetsocket.c
@@ -548,6 +548,9 @@ int virNetSocketNewConnectUNIX(const char *path,
char *rundir = NULL;
int ret = -1;
+ VIR_DEBUG("path=%s spawnDaemon=%d binary=%s", path, spawnDaemon,
+ NULLSTR(binary));
+
memset(&localAddr, 0, sizeof(localAddr));
memset(&remoteAddr, 0, sizeof(remoteAddr));
@@ -608,10 +611,15 @@ int virNetSocketNewConnectUNIX(const char *path,
if (remoteAddr.data.un.sun_path[0] == '@')
remoteAddr.data.un.sun_path[0] = '\0';
- while (retries &&
- connect(fd, &remoteAddr.data.sa, remoteAddr.len) < 0) {
- if (!(spawnDaemon && (errno == ENOENT ||
- errno == ECONNREFUSED))) {
+ while (retries) {
+ if (connect(fd, &remoteAddr.data.sa, remoteAddr.len) == 0) {
+ VIR_DEBUG("connect() succeeded");
+ break;
+ }
+ VIR_DEBUG("connect() failed: retries=%d errno=%d", retries, errno);
+
+ if (!spawnDaemon ||
+ (errno != ENOENT && errno != ECONNREFUSED)) {
virReportSystemError(errno, _("Failed to connect socket to '%s'"),
path);
goto cleanup;
@@ -1,40 +0,0 @@
From: Cole Robinson <crobinso@redhat.com>
Date: Mon, 11 Jan 2016 20:08:45 -0500
Subject: [PATCH] rpc: socket: Explicitly error if we exceed retry count
When we autolaunch libvirtd for session URIs, we spin in a retry
loop waiting for the daemon to start and the connect(2) to succeed.
However if we exceed the retry count, we don't explicitly raise an
error, which can yield a slew of different error messages elsewhere
in the code.
Explicitly raise the last connect(2) failure if we run out of retries.
(cherry picked from commit 8da02d528068942303923fc4f935e77cccac9c7c)
---
src/rpc/virnetsocket.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/rpc/virnetsocket.c b/src/rpc/virnetsocket.c
index dcff69e..90951be 100644
--- a/src/rpc/virnetsocket.c
+++ b/src/rpc/virnetsocket.c
@@ -618,7 +618,9 @@ int virNetSocketNewConnectUNIX(const char *path,
}
VIR_DEBUG("connect() failed: retries=%d errno=%d", retries, errno);
+ retries--;
if (!spawnDaemon ||
+ retries == 0 ||
(errno != ENOENT && errno != ECONNREFUSED)) {
virReportSystemError(errno, _("Failed to connect socket to '%s'"),
path);
@@ -628,7 +630,6 @@ int virNetSocketNewConnectUNIX(const char *path,
if (virNetSocketForkDaemon(binary) < 0)
goto cleanup;
- retries--;
usleep(5000);
}
@@ -1,43 +0,0 @@
From: Cole Robinson <crobinso@redhat.com>
Date: Mon, 11 Jan 2016 20:13:38 -0500
Subject: [PATCH] rpc: socket: Don't repeatedly attempt to launch daemon
On every socket connect(2) attempt we were re-launching session
libvirtd, up to 100 times in 5 seconds.
This understandably caused some weird load races and intermittent
qemu:///session startup failures
https://bugzilla.redhat.com/show_bug.cgi?id=1271183
(cherry picked from commit 2eb7a975756d05a5b54ab4acf60083beb6161ac6)
---
src/rpc/virnetsocket.c | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/src/rpc/virnetsocket.c b/src/rpc/virnetsocket.c
index 90951be..2ee4b6e 100644
--- a/src/rpc/virnetsocket.c
+++ b/src/rpc/virnetsocket.c
@@ -547,6 +547,7 @@ int virNetSocketNewConnectUNIX(const char *path,
virSocketAddr remoteAddr;
char *rundir = NULL;
int ret = -1;
+ bool daemonLaunched = false;
VIR_DEBUG("path=%s spawnDaemon=%d binary=%s", path, spawnDaemon,
NULLSTR(binary));
@@ -627,8 +628,12 @@ int virNetSocketNewConnectUNIX(const char *path,
goto cleanup;
}
- if (virNetSocketForkDaemon(binary) < 0)
- goto cleanup;
+ if (!daemonLaunched) {
+ if (virNetSocketForkDaemon(binary) < 0)
+ goto cleanup;
+
+ daemonLaunched = true;
+ }
usleep(5000);
}
@@ -1,57 +0,0 @@
From: Jiri Denemark <jdenemar@redhat.com>
Date: Fri, 15 Jan 2016 10:55:58 +0100
Subject: [PATCH] security: Do not restore kernel and initrd labels
Kernel/initrd files are essentially read-only shareable images and thus
should be handled in the same way. We already use the appropriate label
for kernel/initrd files when starting a domain, but when a domain gets
destroyed we would remove the labels which would make other running
domains using the same files very unhappy.
https://bugzilla.redhat.com/show_bug.cgi?id=921135
Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
(cherry picked from commit 68acc701bd449481e3206723c25b18fcd3d261b7)
---
src/security/security_dac.c | 8 --------
src/security/security_selinux.c | 8 --------
2 files changed, 16 deletions(-)
diff --git a/src/security/security_dac.c b/src/security/security_dac.c
index deb6980..d01215f 100644
--- a/src/security/security_dac.c
+++ b/src/security/security_dac.c
@@ -971,14 +971,6 @@ virSecurityDACRestoreSecurityAllLabel(virSecurityManagerPtr mgr,
virSecurityDACRestoreSecurityFileLabel(def->os.loader->nvram) < 0)
rc = -1;
- if (def->os.kernel &&
- virSecurityDACRestoreSecurityFileLabel(def->os.kernel) < 0)
- rc = -1;
-
- if (def->os.initrd &&
- virSecurityDACRestoreSecurityFileLabel(def->os.initrd) < 0)
- rc = -1;
-
if (def->os.dtb &&
virSecurityDACRestoreSecurityFileLabel(def->os.dtb) < 0)
rc = -1;
diff --git a/src/security/security_selinux.c b/src/security/security_selinux.c
index 6e67a86..2475a80 100644
--- a/src/security/security_selinux.c
+++ b/src/security/security_selinux.c
@@ -1953,14 +1953,6 @@ virSecuritySELinuxRestoreSecurityAllLabel(virSecurityManagerPtr mgr,
virSecuritySELinuxRestoreSecurityFileLabel(mgr, def->os.loader->nvram) < 0)
rc = -1;
- if (def->os.kernel &&
- virSecuritySELinuxRestoreSecurityFileLabel(mgr, def->os.kernel) < 0)
- rc = -1;
-
- if (def->os.initrd &&
- virSecuritySELinuxRestoreSecurityFileLabel(mgr, def->os.initrd) < 0)
- rc = -1;
-
if (def->os.dtb &&
virSecuritySELinuxRestoreSecurityFileLabel(mgr, def->os.dtb) < 0)
rc = -1;
@@ -1,37 +0,0 @@
From: Cole Robinson <crobinso@redhat.com>
Date: Tue, 15 Mar 2016 17:04:32 -0400
Subject: [PATCH] rpc: wait longer for session daemon to start up
https://bugzilla.redhat.com/show_bug.cgi?id=1271183
We only wait 0.5 seconds for the session daemon to start up and present
its socket, which isn't sufficient for many users. Bump up the sleep
interval and retry amount so we wait for a total of 5.0 seconds.
(cherry picked from commit ca0c06f4008154de55e0b3109885facd0bf02d32)
---
src/rpc/virnetsocket.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/rpc/virnetsocket.c b/src/rpc/virnetsocket.c
index 2ee4b6e..275f1f5 100644
--- a/src/rpc/virnetsocket.c
+++ b/src/rpc/virnetsocket.c
@@ -542,7 +542,7 @@ int virNetSocketNewConnectUNIX(const char *path,
char *lockpath = NULL;
int lockfd = -1;
int fd = -1;
- int retries = 100;
+ int retries = 500;
virSocketAddr localAddr;
virSocketAddr remoteAddr;
char *rundir = NULL;
@@ -635,7 +635,7 @@ int virNetSocketNewConnectUNIX(const char *path,
daemonLaunched = true;
}
- usleep(5000);
+ usleep(10000);
}
localAddr.len = sizeof(localAddr.data);
@@ -1,27 +0,0 @@
From: Jovanka Gulicoska <jovanka.gulicoska@gmail.com>
Date: Thu, 17 Mar 2016 20:02:20 +0100
Subject: [PATCH] driver: log missing modules as INFO, not WARN
Missing modules is a common expected scenario for most libvirt usage on
RPM distributions like Fedora, so it doesn't really warrant logging at
WARN level. Use INFO instead
https://bugzilla.redhat.com/show_bug.cgi?id=1274849
(cherry picked from commit 9a0c7f5f834185db9017c34aabc03ad99cf37bed)
---
src/driver.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/driver.c b/src/driver.c
index db03438..f926fe4 100644
--- a/src/driver.c
+++ b/src/driver.c
@@ -62,7 +62,7 @@ virDriverLoadModule(const char *name)
return NULL;
if (access(modfile, R_OK) < 0) {
- VIR_WARN("Module %s not accessible", modfile);
+ VIR_INFO("Module %s not accessible", modfile);
goto cleanup;
}
@@ -1,126 +0,0 @@
From: Cole Robinson <crobinso@redhat.com>
Date: Tue, 28 Apr 2015 17:38:00 -0400
Subject: [PATCH] polkit: Allow password-less access for 'libvirt' group
Many users, who admin their own machines, want to be able to access
system libvirtd via tools like virt-manager without having to enter
a root password. Just google 'virt-manager without password' and
you'll find many hits. I've read at least 5 blog posts over the years
describing slightly different ways of achieving this goal.
Let's finally add official support for this.
Install a polkit-1 rules file granting password-less auth for any user
in the new 'libvirt' group. Create the group on RPM install
https://bugzilla.redhat.com/show_bug.cgi?id=957300
(cherry picked from commit e94979e901517af9fdde358d7b7c92cc055dd50c)
---
daemon/Makefile.am | 13 +++++++++++++
daemon/libvirt.rules | 9 +++++++++
libvirt.spec.in | 15 +++++++++++++--
3 files changed, 35 insertions(+), 2 deletions(-)
create mode 100644 daemon/libvirt.rules
diff --git a/daemon/Makefile.am b/daemon/Makefile.am
index b95a79d..9c5ea37 100644
--- a/daemon/Makefile.am
+++ b/daemon/Makefile.am
@@ -53,6 +53,7 @@ EXTRA_DIST = \
libvirtd.init.in \
libvirtd.upstart \
libvirtd.policy.in \
+ libvirt.rules \
libvirtd.sasl \
libvirtd.service.in \
libvirtd.socket.in \
@@ -233,6 +234,8 @@ policyauth = auth_admin_keep_session
else ! WITH_POLKIT0
policydir = $(datadir)/polkit-1/actions
policyauth = auth_admin_keep
+rulesdir = $(datadir)/polkit-1/rules.d
+rulesfile = libvirt.rules
endif ! WITH_POLKIT0
endif WITH_POLKIT
@@ -263,9 +266,19 @@ if WITH_POLKIT
install-data-polkit::
$(MKDIR_P) $(DESTDIR)$(policydir)
$(INSTALL_DATA) libvirtd.policy $(DESTDIR)$(policydir)/org.libvirt.unix.policy
+if ! WITH_POLKIT0
+ $(MKDIR_P) $(DESTDIR)$(rulesdir)
+ $(INSTALL_DATA) $(srcdir)/$(rulesfile) $(DESTDIR)$(rulesdir)/50-libvirt.rules
+endif ! WITH_POLKIT0
+
uninstall-data-polkit::
rm -f $(DESTDIR)$(policydir)/org.libvirt.unix.policy
rmdir $(DESTDIR)$(policydir) || :
+if ! WITH_POLKIT0
+ rm -f $(DESTDIR)$(rulesdir)/50-libvirt.rules
+ rmdir $(DESTDIR)$(rulesdir) || :
+endif ! WITH_POLKIT0
+
else ! WITH_POLKIT
install-data-polkit::
uninstall-data-polkit::
diff --git a/daemon/libvirt.rules b/daemon/libvirt.rules
new file mode 100644
index 0000000..01a15fa
--- /dev/null
+++ b/daemon/libvirt.rules
@@ -0,0 +1,9 @@
+// Allow any user in the 'libvirt' group to connect to system libvirtd
+// without entering a password.
+
+polkit.addRule(function(action, subject) {
+ if (action.id == "org.libvirt.unix.manage" &&
+ subject.isInGroup("libvirt")) {
+ return polkit.Result.YES;
+ }
+});
diff --git a/libvirt.spec.in b/libvirt.spec.in
index dc327a2..a23629d 100644
--- a/libvirt.spec.in
+++ b/libvirt.spec.in
@@ -1631,9 +1631,9 @@ then
fi
%if %{with_libvirtd}
+%pre daemon
%if ! %{with_driver_modules}
%if %{with_qemu}
-%pre daemon
%if 0%{?fedora} || 0%{?rhel} >= 6
# We want soft static allocation of well-known ids, as disk images
# are commonly shared across NFS mounts by id rather than name; see
@@ -1647,11 +1647,21 @@ if ! getent passwd qemu >/dev/null; then
useradd -r -g qemu -G kvm -d / -s /sbin/nologin -c "qemu user" qemu
fi
fi
-exit 0
%endif
%endif
%endif
+ %if %{with_polkit}
+ %if 0%{?fedora} || 0%{?rhel} >= 6
+# 'libvirt' group is just to allow password-less polkit access to
+# libvirtd. The uid number is irrelevant, so we use dynamic allocation
+# described at the above link.
+getent group libvirt >/dev/null || groupadd -r libvirt
+ %endif
+ %endif
+
+exit 0
+
%post daemon
%if %{with_systemd}
@@ -1925,6 +1935,7 @@ exit 0
%if 0%{?fedora} || 0%{?rhel} >= 6
%{_datadir}/polkit-1/actions/org.libvirt.unix.policy
%{_datadir}/polkit-1/actions/org.libvirt.api.policy
+%{_datadir}/polkit-1/rules.d/50-libvirt.rules
%else
%{_datadir}/PolicyKit/policy/org.libvirt.unix.policy
%endif
-21
View File
@@ -1,21 +0,0 @@
# Makefile for source rpm: libvirt
# $Id$
NAME := libvirt
SPECFILE = $(firstword $(wildcard *.spec))
define find-makefile-common
for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$d/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done
endef
MAKEFILE_COMMON := $(shell $(find-makefile-common))
ifeq ($(MAKEFILE_COMMON),)
# attempt a checkout
define checkout-makefile-common
test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2
endef
MAKEFILE_COMMON := $(shell $(checkout-makefile-common))
endif
include $(MAKEFILE_COMMON)
+31
View File
@@ -0,0 +1,31 @@
From 4c5b2e1e0d0d0cbbf8c6ed28ce77d055d5974f7f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=A1n=20Tomko?= <jtomko@redhat.com>
Date: Wed, 6 Mar 2024 17:26:40 +0100
Subject: [PATCH] qemu: virtiofs: set correct label when creating the socket
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Use svirt_t instead of virtd_t, since virtd_t is not available in the
session mode and qemu with svirt_t won't be able to talk to unconfined_t
socket.
Signed-off-by: Ján Tomko <jtomko@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
---
src/qemu/qemu_virtiofs.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/qemu/qemu_virtiofs.c b/src/qemu/qemu_virtiofs.c
index 15dea3bb57f..d80cddd3ba9 100644
--- a/src/qemu/qemu_virtiofs.c
+++ b/src/qemu/qemu_virtiofs.c
@@ -102,7 +102,7 @@ qemuVirtioFSOpenChardev(virQEMUDriver *driver,
chrdev->data.nix.listen = true;
chrdev->data.nix.path = g_strdup(socket_path);
- if (qemuSecuritySetDaemonSocketLabel(driver->securityManager, vm->def) < 0)
+ if (qemuSecuritySetSocketLabel(driver->securityManager, vm->def) < 0)
goto cleanup;
fd = qemuOpenChrChardevUNIXSocket(chrdev);
if (fd < 0) {
+2072 -2672
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -1 +1 @@
05f461cd499c628ef07822dd607c340a libvirt-1.2.13.2.tar.gz
SHA512 (libvirt-10.1.0.tar.xz) = 08e73ae15de5681430b62db85ec9901242dca5e9a4ca9685614f4a67092c6e28f27f9187144b3ceb18ad6b40e6eb1a90b1a4b056b0888724d04a62002ee2bc48