[libvirt] [PATCH] spec: Require perl-XML-XPath during build
by Martin Kletzander
Some time ago I went through the trouble to make support for perl module
requirements in our bootstrap. Even though we require it in the
bootstrap, it was not listed as a build requirement in the specfile.
Signed-off-by: Martin Kletzander <mkletzan(a)redhat.com>
---
libvirt.spec.in | 1 +
1 file changed, 1 insertion(+)
diff --git a/libvirt.spec.in b/libvirt.spec.in
index cc5d72209873..b182f4521453 100644
--- a/libvirt.spec.in
+++ b/libvirt.spec.in
@@ -269,6 +269,7 @@ BuildRequires: /usr/bin/pod2man
%endif
BuildRequires: git
BuildRequires: perl
+BuildRequires: perl-XML-XPath
BuildRequires: python
%if %{with_systemd}
BuildRequires: systemd-units
--
2.9.2
8 years, 4 months
[libvirt] [PATCH 0/2] qemu: caps: Sanitize storage of machine type related data
by Peter Krempa
Peter Krempa (2):
qemu: capabilities: Drop unused function virQEMUCapsGetMachineTypes
qemu: caps: Sanitize storage of machine type related data
src/qemu/qemu_capabilities.c | 125 ++++++++++++++++---------------------------
src/qemu/qemu_capabilities.h | 2 -
2 files changed, 46 insertions(+), 81 deletions(-)
--
2.9.2
8 years, 4 months
[libvirt] [PATCH] virsh: Report error when explicit connection fails
by Martin Kletzander
Commit 0c56d9431839 forgot to return false in the cmdConnect command
after the clean up made there.
Before (assuming you don't have uri alias for 'asdf'):
$ virsh connect asdf
error: failed to connect to the hypervisor
$ echo $?
0
After (with the same assumption):
$ virsh connect asdf
error: failed to connect to the hypervisor
error: no connection driver available for asdf
$ echo $?
1
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1356461
Signed-off-by: Martin Kletzander <mkletzan(a)redhat.com>
---
tools/virsh.c | 16 ++++++++++------
1 file changed, 10 insertions(+), 6 deletions(-)
diff --git a/tools/virsh.c b/tools/virsh.c
index f74698fa5f9a..d3fe06f19032 100644
--- a/tools/virsh.c
+++ b/tools/virsh.c
@@ -210,7 +210,7 @@ virshConnect(vshControl *ctl, const char *uri, bool readonly)
* Reconnect after a disconnect from libvirtd
*
*/
-static void
+static int
virshReconnect(vshControl *ctl, const char *name, bool readonly, bool force)
{
bool connected = false;
@@ -237,6 +237,7 @@ virshReconnect(vshControl *ctl, const char *name, bool readonly, bool force)
vshError(ctl, "%s", _("Failed to reconnect to the hypervisor"));
else
vshError(ctl, "%s", _("failed to connect to the hypervisor"));
+ return -1;
} else {
if (name) {
VIR_FREE(ctl->connname);
@@ -253,6 +254,7 @@ virshReconnect(vshControl *ctl, const char *name, bool readonly, bool force)
priv->useGetInfo = false;
priv->useSnapshotOld = false;
priv->blockJobNoBytes = false;
+ return 0;
}
int virshStreamSink(virStreamPtr st ATTRIBUTE_UNUSED,
@@ -301,7 +303,8 @@ cmdConnect(vshControl *ctl, const vshCmd *cmd)
if (vshCommandOptStringReq(ctl, cmd, "name", &name) < 0)
return false;
- virshReconnect(ctl, name, ro, true);
+ if (virshReconnect(ctl, name, ro, true) < 0)
+ return false;
return true;
}
@@ -333,11 +336,13 @@ virshConnectionHandler(vshControl *ctl)
{
virshControlPtr priv = ctl->privData;
- if (!priv->conn || disconnected)
- virshReconnect(ctl, NULL, false, false);
+ if ((!priv->conn || disconnected) &&
+ virshReconnect(ctl, NULL, false, false) < 0)
+ return NULL;
if (virshConnectionUsability(ctl, priv->conn))
return priv->conn;
+
return NULL;
}
@@ -444,14 +449,13 @@ virshInit(vshControl *ctl)
return false;
if (ctl->connname) {
- virshReconnect(ctl, NULL, false, false);
/* Connecting to a named connection must succeed, but we delay
* connecting to the default connection until we need it
* (since the first command might be 'connect' which allows a
* non-default connection, or might be 'help' which needs no
* connection).
*/
- if (!priv->conn) {
+ if (virshReconnect(ctl, NULL, false, false) < 0) {
vshReportError(ctl);
return false;
}
--
2.9.2
8 years, 4 months