]> xenbits.xensource.com Git - libvirt.git/commitdiff
esx: allow getting < max typed parameters
authorEric Blake <eblake@redhat.com>
Wed, 2 Nov 2011 17:36:12 +0000 (11:36 -0600)
committerEric Blake <eblake@redhat.com>
Wed, 2 Nov 2011 20:00:13 +0000 (14:00 -0600)
Allow the user to call with nparams too small, per API documentation.

* src/esx/esx_driver.c (esxDomainGetMemoryParameters): Drop
redundant check.
(esxDomainGetSchedulerParametersFlags): Allow fewer than max.

src/esx/esx_driver.c

index 7cff9c2103a45867f8f5320e7dfc999fc0fd25ff..92b56d8bb67a8413fa733608dc35fb9713f32d55 100644 (file)
@@ -3635,12 +3635,6 @@ esxDomainGetSchedulerParametersFlags(virDomainPtr domain,
 
     virCheckFlags(0, -1);
 
-    if (*nparams < 3) {
-        ESX_ERROR(VIR_ERR_INVALID_ARG, "%s",
-                  _("Parameter array must have space for 3 items"));
-        return -1;
-    }
-
     if (esxVI_EnsureSession(priv->primary) < 0) {
         return -1;
     }
@@ -3656,7 +3650,7 @@ esxDomainGetSchedulerParametersFlags(virDomainPtr domain,
     }
 
     for (dynamicProperty = virtualMachine->propSet;
-         dynamicProperty != NULL && mask != 7 && i < 3;
+         dynamicProperty != NULL && mask != 7 && i < 3 && i < *nparams;
          dynamicProperty = dynamicProperty->_next) {
         if (STREQ(dynamicProperty->name, "config.cpuAllocation.reservation") &&
             ! (mask & (1 << 0))) {
@@ -4886,12 +4880,6 @@ esxDomainGetMemoryParameters(virDomainPtr domain, virTypedParameterPtr params,
         return 0;
     }
 
-    if (*nparams < 1) {
-        ESX_ERROR(VIR_ERR_INVALID_ARG, "%s",
-                  _("Parameter array must have space for 1 item"));
-        return -1;
-    }
-
     if (esxVI_EnsureSession(priv->primary) < 0) {
         return -1;
     }