[libvirt] [PATCH glib] Add missing dep on intltool
by Daniel P. Berrange
Libvirt-glib requires intltool at build time. Previously it
was pulled in transitively via another RPM dependancy. As of
Fedora 26, this no longer happens, exposing the missing RPM
dep.
Signed-off-by: Daniel P. Berrange <berrange(a)redhat.com>
---
Pushed as a build fix for rawhide
libvirt-glib.spec.in | 1 +
1 file changed, 1 insertion(+)
diff --git a/libvirt-glib.spec.in b/libvirt-glib.spec.in
index 2ec8337..a1ca11f 100644
--- a/libvirt-glib.spec.in
+++ b/libvirt-glib.spec.in
@@ -37,6 +37,7 @@ BuildRequires: libtool
%if %{with_vala}
BuildRequires: vala-tools
%endif
+BuildRequires: intltool
%package devel
Group: Development/Libraries
--
2.9.3
8 years
[libvirt] ANNOUNCE: libvirt-glib release 1.0.0
by Daniel P. Berrange
I am pleased to announce that a new release of the libvirt-glib package,
version 1.0.0, is now available from
ftp://libvirt.org/libvirt/glib/
The packages are GPG signed with
Key fingerprint: DAF3 A6FD B26B 6291 2D0E 8E3F BE86 EBB4 1510 4FDF (4096R)
Changes in this release:
- Switch to new release numbering scheme, major
digit incremented each year, minor for each
release, micro for stable branches (if any)
- Fix Libs.private variable in pkg-config file
- Fix git introspection warnings
- Add ability to set SPICE gl property
- Add support for virtio video model
- Add support for 3d accel property
- Add support for querying video model
- Add support for host device config for PCI devs
- Add docs for more APIs
- Avoid unused variable warnings
- Fix check for libvirt optional features to use pkg-config
- Delete manually written python binding. All apps should
use PyGObject with gobjection introspection.
- Add schema to be NULL on config objects
- Preserve unknown devices listed in XML
- Add further test coverage
libvirt-glib comprises three distinct libraries:
- libvirt-glib - Integrate with the GLib event loop and error handling
- libvirt-gconfig - Representation of libvirt XML documents as GObjects
- libvirt-gobject - Mapping of libvirt APIs into the GObject type system
NB: While libvirt aims to be API/ABI stable forever, with libvirt-glib
we are not currently guaranteeing that libvirt-glib libraries are
permanently API/ABI stable. That said we do not expect to break the
API/ABI for the forseeable future and will always strive avoid it.
Follow up comments about libvirt-glib should be directed to the regular
libvir-list(a)redhat.com development list.
Thanks to all the people involved in contributing to this release.
Regards,
Daniel
--
|: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org -o- http://virt-manager.org :|
|: http://entangle-photo.org -o- http://search.cpan.org/~danberr/ :|
8 years
[libvirt] [PATCH] qemu: Fix build on RHEL-6
by Jiri Denemark
Commit c29e6d4805 cause build failure on RHEL-6:
../../src/qemu/qemu_capabilities.c: In function 'virQEMUCapsIsValid':
../../src/qemu/qemu_capabilities.c:4085: error: declaration of 'ctime'
shadows a global declaration [-Wshadow]
/usr/include/time.h:258: error: shadowed declaration is here [-Wshadow]
Signed-off-by: Jiri Denemark <jdenemar(a)redhat.com>
---
src/qemu/qemu_capabilities.c | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c
index ffe7bcd..747226c 100644
--- a/src/qemu/qemu_capabilities.c
+++ b/src/qemu/qemu_capabilities.c
@@ -4082,12 +4082,12 @@ virQEMUCapsNewForBinary(virCapsPtr caps,
bool
virQEMUCapsIsValid(virQEMUCapsPtr qemuCaps,
- time_t ctime)
+ time_t qemuctime)
{
if (!qemuCaps->binary)
return true;
- if (!ctime) {
+ if (!qemuctime) {
struct stat sb;
if (stat(qemuCaps->binary, &sb) < 0) {
@@ -4097,14 +4097,14 @@ virQEMUCapsIsValid(virQEMUCapsPtr qemuCaps,
virStrerror(errno, ebuf, sizeof(ebuf)));
return false;
}
- ctime = sb.st_ctime;
+ qemuctime = sb.st_ctime;
}
- if (ctime != qemuCaps->ctime) {
+ if (qemuctime != qemuCaps->ctime) {
VIR_DEBUG("Outdated capabilities for '%s': QEMU binary changed "
"(%lld vs %lld)",
qemuCaps->binary,
- (long long) ctime, (long long) qemuCaps->ctime);
+ (long long) qemuctime, (long long) qemuCaps->ctime);
return false;
}
--
2.10.2
8 years
[libvirt] [libvirt-glib] tests: Don't leak xml data in test-gconfig-device-unknown
by Christophe Fergeau
---
tests/test-gconfig.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/tests/test-gconfig.c b/tests/test-gconfig.c
index 9cf3f12..2c98c25 100644
--- a/tests/test-gconfig.c
+++ b/tests/test-gconfig.c
@@ -782,6 +782,7 @@ static void test_domain_device_unknown(void)
g_list_free_full(devices, g_object_unref);
g_object_unref(G_OBJECT(domain));
+ g_free(xml);
}
--
2.9.3
8 years
[libvirt] [PATCH v2 00/19] Avoid races with udev
by Michal Privoznik
This is v2 of:
https://www.redhat.com/archives/libvir-list/2016-October/msg01151.html
diff to v1:
- Added udev rule (patch 18/19)
- Wire the beast into spec file
- Introduced a configure argument that suppress installation of this feature
One of the problems here is that this requires patched udev:
https://github.com/systemd/systemd/commit/4f985bd80278972912b80df1390f84d...
This is going to be part of systemd-232 release. Therefore, in my code I've put
checks for 232 version.
Michal Privoznik (19):
virseclabel.h: Include stdbool.h
virseclabel: Introduce virSecurityDeviceLabelDefNewLabel
security_dac: Pass manager to virSecurityDACSetImageLabel
security_dac: Pass manager to virSecurityDACRestoreFileLabelInternal
virudev: Introduce basic skeleton
virudev: Implement virUdevMgrAddLabel and virUdevMgrRemoveAllLabels
virudev: Introduce virUdevMgrDump
tests: Introduce virudevtest
virudev: Parse virUdevMgr from JSON
virudev: Introduce virUdevMgrLookupLabels
util: Introduce libvirt_udevhelper
security: Wire up virUdevMgr
qemu.conf: Introduce write_udev
qemu: Wire up virUdevMgr
qemu: Reload virUdevMgr on start
virudevtest: Introduce device filtering
qemu: Filter uninteresting paths for virUdevMgr
udev: Introduce rule
spec: Install udev helper/rule more cleanly
daemon/99-libvirt.rules | 12 +
daemon/Makefile.am | 22 +-
libvirt.spec.in | 26 ++
m4/virt-udev.m4 | 26 ++
po/POTFILES.in | 2 +
src/Makefile.am | 25 ++
src/libvirt_private.syms | 15 +
src/qemu/libvirtd_qemu.aug | 1 +
src/qemu/qemu.conf | 5 +
src/qemu/qemu_conf.c | 3 +
src/qemu/qemu_conf.h | 5 +
src/qemu/qemu_domain.c | 12 +-
src/qemu/qemu_domain.h | 3 +-
src/qemu/qemu_driver.c | 40 +-
src/qemu/qemu_hotplug.c | 35 +-
src/qemu/qemu_process.c | 47 ++-
src/qemu/qemu_process.h | 3 +
src/qemu/test_libvirtd_qemu.aug.in | 1 +
src/security/security_dac.c | 103 ++++--
src/security/security_manager.c | 16 +
src/security/security_manager.h | 5 +
src/security/security_selinux.c | 47 ++-
src/util/udevhelper.c | 137 +++++++
src/util/virseclabel.c | 14 +
src/util/virseclabel.h | 6 +
src/util/virudev.c | 588 ++++++++++++++++++++++++++++++
src/util/virudev.h | 63 ++++
tests/Makefile.am | 12 +
tests/virudevmock.c | 29 ++
tests/virudevtest.c | 312 ++++++++++++++++
tests/virudevtestdata/complex.json | 30 ++
tests/virudevtestdata/empty.json | 5 +
tests/virudevtestdata/simple-dac.json | 13 +
tests/virudevtestdata/simple-selinux.json | 13 +
34 files changed, 1619 insertions(+), 57 deletions(-)
create mode 100644 daemon/99-libvirt.rules
create mode 100644 src/util/udevhelper.c
create mode 100644 src/util/virudev.c
create mode 100644 src/util/virudev.h
create mode 100644 tests/virudevmock.c
create mode 100644 tests/virudevtest.c
create mode 100644 tests/virudevtestdata/complex.json
create mode 100644 tests/virudevtestdata/empty.json
create mode 100644 tests/virudevtestdata/simple-dac.json
create mode 100644 tests/virudevtestdata/simple-selinux.json
--
2.8.4
8 years
[libvirt] [PATCH] docs: Add Qt Virtual machines manager and Qt Remote viewer
by Alexander Vasilenko
---
docs/apps.html.in | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/docs/apps.html.in b/docs/apps.html.in
index 1a138b3..4efb318 100644
--- a/docs/apps.html.in
+++ b/docs/apps.html.in
@@ -208,6 +208,17 @@
to remote consoles supporting the VNC protocol. Also provides
an optional mozilla browser plugin.
</dd>
+ <dt><a href="http://f1ash.github.io/qt-virt-manager">qt-virt-manager</a></dt>
+ <dd>
+ The Qt GUI for create and control VMs and another virtual entities
+ (aka networks, storages, interfaces, secrets, network filters).
+ Contains integrated LXC/SPICE/VNC viewer for accessing the graphical or
+ text console associated with a virtual machine or container.
+ </dd>
+ <dt><a href="http://f1ash.github.io/qt-virt-manager/#virtual-machines-viewer">qt-remote-viewer</a></dt>
+ <dd>
+ The Qt VNC/SPICE viewer for access to remote desktops or VMs.
+ </dd>
</dl>
<h2><a name="iaas">Infrastructure as a Service (IaaS)</a></h2>
--
2.10.1
8 years
[libvirt] [PATCH] vshReadlineParse: Remove unused variable
by Michal Privoznik
After 06a7b1ff4 the @&opts_need_arg is not used anywhere. Well,
it is set but never read:
vsh.c: In function 'vshReadlineParse':
vsh.c:2658:14: warning: variable 'opts_need_arg' set but not used [-Wunused-but-set-variable]
uint64_t opts_need_arg, opts_seen;
^~~~~~~~~~~~~
Signed-off-by: Michal Privoznik <mprivozn(a)redhat.com>
---
tools/vsh.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/tools/vsh.c b/tools/vsh.c
index 17199ae..f7ba070 100644
--- a/tools/vsh.c
+++ b/tools/vsh.c
@@ -2655,7 +2655,7 @@ vshReadlineParse(const char *text, int state)
static char **completed_list;
static unsigned int completed_list_index;
static uint64_t const_opts_need_arg, const_opts_required, const_opts_seen;
- uint64_t opts_need_arg, opts_seen;
+ uint64_t opts_seen;
size_t opt_index;
static bool cmd_exists, opts_filled, opt_exists;
static bool non_bool_opt_exists, data_complete;
@@ -2728,7 +2728,6 @@ vshReadlineParse(const char *text, int state)
if (vshCmddefOptParse(cmd, &const_opts_need_arg,
&const_opts_required) < 0)
goto error;
- opts_need_arg = const_opts_need_arg;
opts_seen = const_opts_seen;
opts_filled = true;
} else if (tkdata[0] == '-' && tkdata[1] == '-' &&
@@ -2793,7 +2792,6 @@ vshReadlineParse(const char *text, int state)
|| opt->type == VSH_OT_BOOL)
goto error;
opt_exists = true;
- opts_need_arg = const_opts_need_arg;
opts_seen = const_opts_seen;
} else {
/* In every other case, return NULL */
--
2.8.4
8 years
[libvirt] Libvirt build broken
by Wei Liu
Hi
Xen Project's CI system found a build failure between libvirt changes
06a7b1ff..478ddedc. I don't think this is Xen specific FWIW.
The build log can be found at:
http://logs.test-lab.xenproject.org/osstest/logs/101868/build-amd64-libvi...
The first error:
CC libvirt_driver_la-libvirt-host.lo
libvirt.c:320:15: error: variable 'virTLSThreadImpl' has initializer but incomplete type
static struct gcry_thread_cbs virTLSThreadImpl = {
^
Earlier in configure:
configure: gnutls: no
>From the look of it configure doesn't work properly anymore.
Wei.
8 years
[libvirt] [PATCH] configure: check gnutls related stuff only if gnutls was found
by Pavel Hrdina
This fixes a build issue with old gnutls.
Broken by commit 680d2f49da.
Reported-by: Olga Krishtal <okrishtal(a)virtuozzo.com>
Signed-off-by: Pavel Hrdina <phrdina(a)redhat.com>
---
Pushed under build-breaker rule.
m4/virt-gnutls.m4 | 64 ++++++++++++++++++++++++++++---------------------------
1 file changed, 33 insertions(+), 31 deletions(-)
diff --git a/m4/virt-gnutls.m4 b/m4/virt-gnutls.m4
index 9e8bfb1..b850828 100644
--- a/m4/virt-gnutls.m4
+++ b/m4/virt-gnutls.m4
@@ -20,41 +20,43 @@ dnl
AC_DEFUN([LIBVIRT_CHECK_GNUTLS],[
LIBVIRT_CHECK_PKG([GNUTLS], [gnutls], [2.2.0])
- dnl Double probe: gnutls >= 2.12 had a configure option for gcrypt and
- dnl gnutls >= 3.0 uses only nettle. Our goal is to avoid gcrypt if we
- dnl can prove gnutls uses nettle, but it is a safe fallback to use gcrypt
- dnl if we can't prove anything.
-
- GNUTLS_GCRYPT=
- if $PKG_CONFIG --exists 'gnutls >= 3.0'; then
- GNUTLS_GCRYPT="no"
- else
- GNUTLS_GCRYPT="probe"
- fi
+ if test "$with_gnutls" = "yes" ; then
+ dnl Double probe: gnutls >= 2.12 had a configure option for gcrypt and
+ dnl gnutls >= 3.0 uses only nettle. Our goal is to avoid gcrypt if we
+ dnl can prove gnutls uses nettle, but it is a safe fallback to use gcrypt
+ dnl if we can't prove anything.
- if test "$GNUTLS_GCRYPT" = "probe"; then
- case $($PKG_CONFIG --libs --static gnutls) in
- *gcrypt*) GNUTLS_GCRYPT=yes ;;
- *nettle*) GNUTLS_GCRYPT=no ;;
- *) GNUTLS_GCRYPT=unknown ;;
- esac
- fi
+ GNUTLS_GCRYPT=
+ if $PKG_CONFIG --exists 'gnutls >= 3.0'; then
+ GNUTLS_GCRYPT="no"
+ else
+ GNUTLS_GCRYPT="probe"
+ fi
- if test "$GNUTLS_GCRYPT" = "yes" || test "$GNUTLS_GCRYPT" = "unknown"; then
- GNUTLS_LIBS="$GNUTLS_LIBS -lgcrypt"
- dnl We're not using gcrypt deprecated features so define
- dnl GCRYPT_NO_DEPRECATED to avoid deprecated warnings
- GNUTLS_CFLAGS="$GNUTLS_CFLAGS -DGCRYPT_NO_DEPRECATED"
- AC_DEFINE_UNQUOTED([WITH_GNUTLS_GCRYPT], 1,
- [set to 1 if it is known or assumed that GNUTLS uses gcrypt])
- fi
+ if test "$GNUTLS_GCRYPT" = "probe"; then
+ case $($PKG_CONFIG --libs --static gnutls) in
+ *gcrypt*) GNUTLS_GCRYPT=yes ;;
+ *nettle*) GNUTLS_GCRYPT=no ;;
+ *) GNUTLS_GCRYPT=unknown ;;
+ esac
+ fi
- AC_CHECK_HEADERS([gnutls/crypto.h], [], [], [[
- #include <gnutls/gnutls.h>
- ]])
+ if test "$GNUTLS_GCRYPT" = "yes" || test "$GNUTLS_GCRYPT" = "unknown"; then
+ GNUTLS_LIBS="$GNUTLS_LIBS -lgcrypt"
+ dnl We're not using gcrypt deprecated features so define
+ dnl GCRYPT_NO_DEPRECATED to avoid deprecated warnings
+ GNUTLS_CFLAGS="$GNUTLS_CFLAGS -DGCRYPT_NO_DEPRECATED"
+ AC_DEFINE_UNQUOTED([WITH_GNUTLS_GCRYPT], 1,
+ [set to 1 if it is known or assumed that GNUTLS uses gcrypt])
+ fi
- AC_CHECK_FUNC([gnutls_rnd])
- AC_CHECK_FUNC([gnutls_cipher_encrypt])
+ AC_CHECK_HEADERS([gnutls/crypto.h], [], [], [[
+ #include <gnutls/gnutls.h>
+ ]])
+
+ AC_CHECK_FUNC([gnutls_rnd])
+ AC_CHECK_FUNC([gnutls_cipher_encrypt])
+ fi
])
AC_DEFUN([LIBVIRT_RESULT_GNUTLS],[
--
2.10.2
8 years