[Libvirt-cim] [PATCH] Update SDC to return template DiskPoolRASDs for disk and iscsi type pools
Richard Maciel
rmaciel at linux.vnet.ibm.com
Wed Jun 3 16:48:17 UTC 2009
+1
Kaitlin Rupert wrote:
> # HG changeset patch
> # User Kaitlin Rupert <karupert at us.ibm.com>
> # Date 1242695586 25200
> # Node ID c127bb551eb81bfe3fe3a2ad0225d7307e4bd1ee
> # Parent 9ac4e06aa21334cf25b8096663dca6fea74dccd8
> Update SDC to return template DiskPoolRASDs for disk and iscsi type pools
>
> Rearrange things to reduce duplicate code.
>
> Signed-off-by: Kaitlin Rupert <karupert at us.ibm.com>
>
> diff -r 9ac4e06aa213 -r c127bb551eb8 src/Virt_SettingsDefineCapabilities.c
> --- a/src/Virt_SettingsDefineCapabilities.c Mon May 18 18:13:06 2009 -0700
> +++ b/src/Virt_SettingsDefineCapabilities.c Mon May 18 18:13:06 2009 -0700
> @@ -1239,11 +1239,12 @@
> CMPIInstance *inst;
> CMPIStatus s = {CMPI_RC_OK, NULL};
> const char *path = "/dev/null";
> - const char *dev_path;
> - const char *host;
> - const char *src_dir;
> - int type[3] = {DISK_POOL_DIR, DISK_POOL_FS, DISK_POOL_NETFS};
> - int pool_types = 3;
> + int type[5] = {DISK_POOL_DIR,
> + DISK_POOL_FS,
> + DISK_POOL_NETFS,
> + DISK_POOL_DISK,
> + DISK_POOL_ISCSI};
> + int pool_types = 5;
> int i;
>
> switch (template_type) {
> @@ -1267,6 +1268,10 @@
> }
>
> for (i = 0; i < pool_types; i++) {
> + const char *dev_path = NULL;
> + const char *host = NULL;
> + const char *src_dir = NULL;
> +
> inst = sdc_rasd_inst(&s, ref, CIM_RES_TYPE_DISK, POOL_RASD);
> if ((inst == NULL) || (s.rc != CMPI_RC_OK))
> goto out;
> @@ -1274,24 +1279,40 @@
> CMSetProperty(inst, "InstanceID", (CMPIValue *)id, CMPI_chars);
>
> switch (type[i]) {
> + case DISK_POOL_DISK:
> + dev_path = "/dev/VolGroup00/LogVol100";
> +
> + break;
> case DISK_POOL_FS:
> dev_path = "/dev/sda100";
> - CMSetProperty(inst, "DevicePath",
> - (CMPIValue *)dev_path, CMPI_chars);
> +
> break;
> case DISK_POOL_NETFS:
> host = "host_sys.domain.com";
> - CMSetProperty(inst, "Host",
> - (CMPIValue *)host, CMPI_chars);
> + src_dir = "/var/lib/images";
>
> - src_dir = "/var/lib/images";
> - CMSetProperty(inst, "SourceDirectory",
> - (CMPIValue *)src_dir, CMPI_chars);
> + break;
> + case DISK_POOL_ISCSI:
> + host = "host_sys.domain.com";
> + dev_path = "iscsi-target";
> +
> break;
> default:
> break;
> }
>
> + if (dev_path != NULL)
> + CMSetProperty(inst, "DevicePath",
> + (CMPIValue *)dev_path, CMPI_chars);
> +
> + if (host != NULL)
> + CMSetProperty(inst, "Host",
> + (CMPIValue *)host, CMPI_chars);
> +
> + if (src_dir != NULL)
> + CMSetProperty(inst, "SourceDirectory",
> + (CMPIValue *)src_dir, CMPI_chars);
> +
> CMSetProperty(inst, "Type", (CMPIValue *)&type[i], CMPI_uint16);
> CMSetProperty(inst, "Path", (CMPIValue *)path, CMPI_chars);
>
>
> _______________________________________________
> Libvirt-cim mailing list
> Libvirt-cim at redhat.com
> https://www.redhat.com/mailman/listinfo/libvirt-cim
--
Richard Maciel, MSc
IBM Linux Technology Center
rmaciel at linux.vnet.ibm.com
More information about the Libvirt-cim
mailing list