<br><font size=2 face="sans-serif"># HG changeset patch</font>
<br><font size=2 face="sans-serif"># User Gareth S. Bestor <bestor@us.ibm.com></font>
<br><font size=2 face="sans-serif"># Date 1313162799 25200</font>
<br><font size=2 face="sans-serif"># Node ID 39c85f57c94fa36c681d4e9caa6e14617dcc7e60</font>
<br><font size=2 face="sans-serif"># Parent 8b4f6d69f40904ced24f7948f04f89e770e37bce</font>
<br><font size=2 face="sans-serif">Patches for Virt_SettingsDefineCapabilities:
incorrect Default ValueRole, strstr() misuse</font>
<br>
<br><font size=2 face="sans-serif">- The CIM_AllocationCapabilities for
'Default' RASDs have the incorrect ValueRole. per DSP1043 "Allocation
Capabilities Profile", Section 10.5 "CIM_SettingsDefineCapabilities
– Default" the ValueRole should be 0 ("Default")</font>
<br>
<br><font size=2 face="sans-serif">- Fixed mistake with usage of strstr()
swapping the arguments; should be:</font>
<br><font size=2 face="sans-serif"> char *strstr(const
char *haystack, const char *needle);</font>
<br><font size=2 face="sans-serif"> This may not have mattered before
when both strings were always exactly same or didnt match, but now for
new 'Point' instances the instanceid has a prefix.</font>
<br>
<br><font size=2 face="sans-serif">Signed-off-by: Gareth S. Bestor <bestor@us.ibm.com></font>
<br>
<br><font size=2 face="sans-serif">diff -r 8b4f6d69f409 -r 39c85f57c94f
src/Virt_SettingsDefineCapabilities.c</font>
<br><font size=2 face="sans-serif">--- a/src/Virt_SettingsDefineCapabilities.c
Mon Aug 08 11:40:09 2011 -0700</font>
<br><font size=2 face="sans-serif">+++ b/src/Virt_SettingsDefineCapabilities.c
Fri Aug 12 08:26:39 2011 -0700</font>
<br><font size=2 face="sans-serif">@@ -2054,19 +2054,22 @@</font>
<br><font size=2 face="sans-serif">
goto out;</font>
<br><font size=2 face="sans-serif"> }</font>
<br><font size=2 face="sans-serif"> </font>
<br><font size=2 face="sans-serif">- if (strstr("Default",
iid) != NULL)</font>
<br><font size=2 face="sans-serif">+ if (strstr(iid,
"Default") != NULL) {</font>
<br><font size=2 face="sans-serif">
valuerange = SDC_RANGE_POINT;</font>
<br><font size=2 face="sans-serif">- else if
(strstr("Increment", iid) != NULL)</font>
<br><font size=2 face="sans-serif">+
valuerole = SDC_ROLE_DEFAULT;</font>
<br><font size=2 face="sans-serif">+ }</font>
<br><font size=2 face="sans-serif">+ else if
(strstr(iid, "Point") != NULL)</font>
<br><font size=2 face="sans-serif">+
valuerange = SDC_RANGE_POINT;</font>
<br><font size=2 face="sans-serif">+ else if
(strstr(iid, "Increment") != NULL)</font>
<br><font size=2 face="sans-serif">
valuerange = SDC_RANGE_INC;</font>
<br><font size=2 face="sans-serif">- else if
(strstr("Maximum", iid) != NULL)</font>
<br><font size=2 face="sans-serif">+ else if
(strstr(iid, "Maximum") != NULL)</font>
<br><font size=2 face="sans-serif">
valuerange = SDC_RANGE_MAX;</font>
<br><font size=2 face="sans-serif">- else if
(strstr("Minimum", iid) != NULL)</font>
<br><font size=2 face="sans-serif">+ else if
(strstr(iid, "Minimum") != NULL)</font>
<br><font size=2 face="sans-serif">
valuerange = SDC_RANGE_MIN;</font>
<br><font size=2 face="sans-serif">- else</font>
<br><font size=2 face="sans-serif">-
CU_DEBUG("Unknown default RASD type: `%s'",
iid);</font>
<br><font size=2 face="sans-serif">-</font>
<br><font size=2 face="sans-serif">- if (valuerange
== SDC_RANGE_POINT)</font>
<br><font size=2 face="sans-serif">-
valuerole = SDC_ROLE_DEFAULT;</font>
<br><font size=2 face="sans-serif">+ else {</font>
<br><font size=2 face="sans-serif">+
CU_DEBUG("Unknown RASD type: `%s'", iid);</font>
<br><font size=2 face="sans-serif">+
goto out;</font>
<br><font size=2 face="sans-serif">+ }</font>
<br><font size=2 face="sans-serif"> </font>
<br><font size=2 face="sans-serif"> CMSetProperty(ref_inst,
"ValueRole",</font>
<br><font size=2 face="sans-serif">
(CMPIValue *)&valuerole, CMPI_uint16);</font>