
On 05/17/2011 07:14 AM, Daniel Veillard wrote:
On Tue, May 17, 2011 at 02:45:44PM +0200, Matthias Bolte wrote:
--- src/libvirt.c | 100 +++++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 94 insertions(+), 6 deletions(-)
@@ -5040,6 +5045,12 @@ virDomainGetSchedulerParameters(virDomainPtr domain, virDispatchError(NULL); return -1; } + + if (params == NULL || nparams == NULL) { + virLibDomainError(VIR_ERR_INVALID_ARG, __FUNCTION__); + goto error; + }
I was just wondering here if params being NULL couldn't be used to find out the correct value for nparams, but looking at least at the qemu driver code we really expect the array there.
Let's fix that as a separate patch.
conn = domain->conn;
if (conn->driver->domainGetSchedulerParameters) { @@ -5084,6 +5095,12 @@ virDomainSetSchedulerParameters(virDomainPtr domain, virDispatchError(NULL); return -1; } + + if (params == NULL) { + virLibDomainError(VIR_ERR_INVALID_ARG, __FUNCTION__); + goto error; + }
Hmm, here we document that nparams can be <= the value returned by virDomainGetSchedulerType; which means it can be 0, which means that params can be NULL. I think we should change this to allow NULL,0 in input as a way of querying the proper nparams size on output. This affects Hu's patch series, where we are adding virDomainSetSchedulerParametersFlags, which should have the same semantics. -- Eric Blake eblake@redhat.com +1-801-349-2682 Libvirt virtualization library http://libvirt.org