+1 and pushed. I'm pretty sure the existing cimtest does not cover this,
but perhaps it should (?)
On 08/14/2011 10:05 PM, Wayne Xia wrote:
Seems good, +1
于 2011-8-13 6:37, Gareth S Bestor 写道:
>
> # HG changeset patch
> # User Gareth S. Bestor <bestor(a)us.ibm.com>
> # Date 1313162799 25200
> # Node ID 39c85f57c94fa36c681d4e9caa6e14617dcc7e60
> # Parent 8b4f6d69f40904ced24f7948f04f89e770e37bce
> Patches for Virt_SettingsDefineCapabilities: incorrect Default
> ValueRole, strstr() misuse
>
> - 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")
>
> - Fixed mistake with usage of strstr() swapping the arguments; should be:
> char *strstr(const char *haystack, const char *needle);
> 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.
>
> Signed-off-by: Gareth S. Bestor <bestor(a)us.ibm.com>
>
> diff -r 8b4f6d69f409 -r 39c85f57c94f
> src/Virt_SettingsDefineCapabilities.c
> --- a/src/Virt_SettingsDefineCapabilities.c Mon Aug 08 11:40:09 2011
> -0700
> +++ b/src/Virt_SettingsDefineCapabilities.c Fri Aug 12 08:26:39 2011
> -0700
> @@ -2054,19 +2054,22 @@
> goto out;
> }
>
> - if (strstr("Default", iid) != NULL)
> + if (strstr(iid, "Default") != NULL) {
> valuerange = SDC_RANGE_POINT;
> - else if (strstr("Increment", iid) != NULL)
> + valuerole = SDC_ROLE_DEFAULT;
> + }
> + else if (strstr(iid, "Point") != NULL)
> + valuerange = SDC_RANGE_POINT;
> + else if (strstr(iid, "Increment") != NULL)
> valuerange = SDC_RANGE_INC;
> - else if (strstr("Maximum", iid) != NULL)
> + else if (strstr(iid, "Maximum") != NULL)
> valuerange = SDC_RANGE_MAX;
> - else if (strstr("Minimum", iid) != NULL)
> + else if (strstr(iid, "Minimum") != NULL)
> valuerange = SDC_RANGE_MIN;
> - else
> - CU_DEBUG("Unknown default RASD type: `%s'", iid);
> -
> - if (valuerange == SDC_RANGE_POINT)
> - valuerole = SDC_ROLE_DEFAULT;
> + else {
> + CU_DEBUG("Unknown RASD type: `%s'", iid);
> + goto out;
> + }
>
> CMSetProperty(ref_inst, "ValueRole",
> (CMPIValue *)&valuerole, CMPI_uint16);
>
>
>
> _______________________________________________
> Libvirt-cim mailing list
> Libvirt-cim(a)redhat.com
>
https://www.redhat.com/mailman/listinfo/libvirt-cim
--
Chip Vincent
Open Virtualization
IBM Linux Technology Center
cvincent(a)linux.vnet.ibm.com