OBS User autobuild 2009-10-13 15:16:41 +00:00 committed by Git OBS Bridge
parent 82df7d10ec
commit 42e6d0f706
4 changed files with 27 additions and 66 deletions

View File

@ -1,11 +1,3 @@
-------------------------------------------------------------------
Mon Oct 12 22:39:42 MDT 2009 - jfehlig@novell.com
- Build phyp driver ifarch ppc64
fate#307096
- Fix memory leaks in libvirtd's message processing
msg-proc-memleak.patch
-------------------------------------------------------------------
Tue Sep 29 08:34:28 MDT 2009 - jfehlig@novell.com

View File

@ -20,7 +20,6 @@
%define with_xen 1
%define with_lxc 0
%define with_selinux 0
%define with_phyp 0
# Xen is available only on i386 x86_64
%ifnarch %ix86 x86_64
%define with_xen 0
@ -29,10 +28,6 @@
%define with_lxc 1
%define with_selinux 1
%endif
# Build phyp backend for IBM Power systems
%ifarch ppc64
%define with_phyp 1
%endif
Name: libvirt
BuildRequires: bridge-utils cyrus-sasl-devel device-mapper-devel fdupes gettext gnutls-devel hal-devel iptables-devel libxml2-devel lvm2 ncurses-devel parted-devel pkg-config python-devel readline-devel util-linux xhtml-dtd
@ -55,9 +50,6 @@ BuildRequires: polkit >= 0.9
%else
BuildRequires: PolicyKit-devel >= 0.6
%endif
%if %{with_phyp}
BuildRequires: libssh2-devel
%endif
# Only for directory ownership:
BuildRequires: gtk-doc
Url: http://libvirt.org/
@ -94,7 +86,6 @@ Source1: libvirtd.init
Patch0: devmap-no-pkgconfig.patch
Patch1: xen-refcnt.patch
Patch2: vshdeinit-recurse.patch
Patch3: msg-proc-memleak.patch
# Need to go upstream
Patch100: socat.patch
Patch101: clone.patch
@ -199,7 +190,6 @@ Authors:
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch100 -p1
%patch101
%patch102 -p1

View File

@ -1,48 +0,0 @@
Index: libvirt-0.7.1/qemud/dispatch.c
===================================================================
--- libvirt-0.7.1.orig/qemud/dispatch.c
+++ libvirt-0.7.1/qemud/dispatch.c
@@ -191,6 +191,7 @@ remoteSerializeError(struct qemud_client
xdr_error:
xdr_destroy(&xdr);
+ VIR_FREE(msg);
fatal_error:
xdr_free((xdrproc_t)xdr_remote_error, (char *)rerr);
return -1;
@@ -336,6 +337,7 @@ remoteDispatchClientRequest (struct qemu
struct qemud_client *client,
struct qemud_client_message *msg)
{
+ int ret;
remote_error rerr;
memset(&rerr, 0, sizeof rerr);
@@ -364,7 +366,12 @@ remoteDispatchClientRequest (struct qemu
}
error:
- return remoteSerializeReplyError(client, &rerr, &msg->hdr);
+ ret = remoteSerializeReplyError(client, &rerr, &msg->hdr);
+
+ if (ret >= 0)
+ VIR_FREE(msg);
+
+ return ret;
}
@@ -521,8 +528,12 @@ remoteDispatchClientCall (struct qemud_s
rpc_error:
/* Semi-bad stuff happened, we can still try to send back
* an RPC error message to client */
- return remoteSerializeReplyError(client, &rerr, &msg->hdr);
+ rv = remoteSerializeReplyError(client, &rerr, &msg->hdr);
+
+ if (rv >= 0)
+ VIR_FREE(msg);
+ return rv;
xdr_error:
/* Seriously bad stuff happened, so we'll kill off this client

27
sexpr2string.patch Normal file
View File

@ -0,0 +1,27 @@
From 1a1f8b9dbb68bf43c831e471ab4308d81a113ecd Mon Sep 17 00:00:00 2001
From: Jim Fehlig <jfehlig@novell.com>
Date: Tue, 25 Aug 2009 15:54:18 -0600
Subject: [PATCH] Fix sexpr2string() to handle empty list.
S-expression containing empty lists, e.g. (cpus (() () () ())),
was not being handled properly in sexpr2string() serialization.
Emit an empty list when encountering NIL sexpr kind.
---
src/sexpr.c | 4 ++++
1 files changed, 4 insertions(+), 0 deletions(-)
Index: libvirt-0.7.0/src/sexpr.c
===================================================================
--- libvirt-0.7.0.orig/src/sexpr.c
+++ libvirt-0.7.0/src/sexpr.c
@@ -255,6 +255,10 @@ sexpr2string(const struct sexpr * sexpr,
ret += tmp;
break;
case SEXPR_NIL:
+ tmp = snprintf(buffer + ret, n_buffer - ret, "()");
+ if (tmp == 0)
+ goto error;
+ ret += tmp;
break;
default:
goto error;