]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
fix inadequate initialization in storage and test drivers
authorJim Meyering <meyering@redhat.com>
Tue, 2 Dec 2008 15:59:14 +0000 (15:59 +0000)
committerJim Meyering <meyering@redhat.com>
Tue, 2 Dec 2008 15:59:14 +0000 (15:59 +0000)
* src/storage_driver.c (storageListPools): Set all "names" entries to 0.
(storageListDefinedPools, storagePoolListVolumes): Likewise.
* src/test.c (testStoragePoolListVolumes): Likewise.

ChangeLog
src/storage_driver.c
src/test.c

index 9d9c162e87023b25a6618fe5924235ee5f30c31c..55da5a98efaf93d4bd4c227db7b48c23b2406b13 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+Tue, 2 Dec 2008 16:58:16 +0100 Jim Meyering <meyering@redhat.com>
+
+       fix inadequate initialization in storage and test drivers
+       * src/storage_driver.c (storageListPools): Set all "names" entries to 0.
+       (storageListDefinedPools, storagePoolListVolumes): Likewise.
+       * src/test.c (testStoragePoolListVolumes): Likewise.
+
 Tue Dec 2 13:45:00 CET 2008 Chris Lalancette <clalance@redhat.com>
        * configure.in, src/storage_backend.c: Older distributions (i.e.
        RHEL-5) don't have udevadm at all, but they do have udevsettle.  So
index 366820b623612e64622260e974db47e91733a0a2..53388f1ebb4f67fb46db51740e61d446263decfc 100644 (file)
@@ -347,7 +347,7 @@ storageListPools(virConnectPtr conn,
         free(names[i]);
         names[i] = NULL;
     }
-    memset(names, 0, nnames);
+    memset(names, 0, nnames * sizeof(*names));
     return -1;
 }
 
@@ -389,7 +389,7 @@ storageListDefinedPools(virConnectPtr conn,
         free(names[i]);
         names[i] = NULL;
     }
-    memset(names, 0, nnames);
+    memset(names, 0, nnames * sizeof(*names));
     return -1;
 }
 
@@ -880,7 +880,7 @@ storagePoolListVolumes(virStoragePoolPtr obj,
         return -1;
     }
 
-    memset(names, 0, maxnames);
+    memset(names, 0, maxnames * sizeof(*names));
     for (i = 0 ; i < pool->volumes.count && n < maxnames ; i++) {
         if ((names[n++] = strdup(pool->volumes.objs[i]->name)) == NULL) {
             virStorageReportError(obj->conn, VIR_ERR_NO_MEMORY,
@@ -895,7 +895,7 @@ storagePoolListVolumes(virStoragePoolPtr obj,
     for (n = 0 ; n < maxnames ; n++)
         VIR_FREE(names[i]);
 
-    memset(names, 0, maxnames);
+    memset(names, 0, maxnames * sizeof(*names));
     return -1;
 }
 
index 7998886c57ac96480a5239605411acdaa06c0644..3e942daff7b869f2cfdc7eb93e7c09c7b24fa1fe 100644 (file)
@@ -1951,7 +1951,7 @@ testStoragePoolListVolumes(virStoragePoolPtr obj,
     POOL_IS_ACTIVE(privpool, -1);
     int i = 0, n = 0;
 
-    memset(names, 0, maxnames);
+    memset(names, 0, maxnames * sizeof(*names));
     for (i = 0 ; i < privpool->volumes.count && n < maxnames ; i++) {
         if ((names[n++] = strdup(privpool->volumes.objs[i]->name)) == NULL) {
             testError(obj->conn, VIR_ERR_NO_MEMORY, "%s", _("name"));
@@ -1965,7 +1965,7 @@ testStoragePoolListVolumes(virStoragePoolPtr obj,
     for (n = 0 ; n < maxnames ; n++)
         VIR_FREE(names[i]);
 
-    memset(names, 0, maxnames);
+    memset(names, 0, maxnames * sizeof(*names));
     return -1;
 }