File 7cfd1fbb-qemu-CVE-2019-3840.patch of Package libvirt.17937

commit 7cfd1fbb1332ae5df678b9f41a62156cb2e88c73
Author: Ján Tomko <jtomko@redhat.com>
Date:   Fri Jan 4 10:17:46 2019 +0100

    qemu: require reply from guest agent in qemuAgentGetInterfaces
    
    Since its introduction in commit 0977b8aa071 (released in v1.2.14)
    qemuAgentGetInterfaces calls qemuAgentCommand with needReply=false,
    which allows qemuAgentCommand to return 0 even when it did not get
    any reply from the agent.
    
    Set needReply to true, since we dereference it right after.
    
    This can be hit if libvirt is waiting for an event from the agent
    (e.g. shutdown) and the agent cannot reply in time (e.g. due to
    the guest being shut down), as reported in:
    https://bugzilla.redhat.com/show_bug.cgi?id=1663051
    
    Signed-off-by: Ján Tomko <jtomko@redhat.com>
    Reviewed-by: Jiri Denemark <jdenemar@redhat.com>

Index: libvirt-4.0.0/src/qemu/qemu_agent.c
===================================================================
--- libvirt-4.0.0.orig/src/qemu/qemu_agent.c
+++ libvirt-4.0.0/src/qemu/qemu_agent.c
@@ -2066,7 +2066,7 @@ qemuAgentGetInterfaces(qemuAgentPtr mon,
     if (!(cmd = qemuAgentMakeCommand("guest-network-get-interfaces", NULL)))
         goto cleanup;
 
-    if (qemuAgentCommand(mon, cmd, &reply, false, VIR_DOMAIN_QEMU_AGENT_COMMAND_BLOCK) < 0 ||
+    if (qemuAgentCommand(mon, cmd, &reply, true, VIR_DOMAIN_QEMU_AGENT_COMMAND_BLOCK) < 0 ||
         qemuAgentCheckError(cmd, reply) < 0) {
         goto cleanup;
     }
openSUSE Build Service is sponsored by