[PATCH] Update SDC to return template DiskPoolRASDs for disk and iscsi type pools

# HG changeset patch # User Kaitlin Rupert <karupert@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@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);

+1 Kaitlin Rupert wrote:
# HG changeset patch # User Kaitlin Rupert <karupert@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@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@redhat.com https://www.redhat.com/mailman/listinfo/libvirt-cim
-- Richard Maciel, MSc IBM Linux Technology Center rmaciel@linux.vnet.ibm.com
participants (2)
-
Kaitlin Rupert
-
Richard Maciel