RM> -static CMPIStatus return_console_sap(const CMPIObjectPath *ref,
RM> - const CMPIResult *results,
RM> - bool names_only)
RM> +static CMPIStatus enum_console_saps(const CMPIObjectPath *ref,
RM> + const CMPIResult *results,
RM> + bool names_only)
RM> +{
RM> + CMPIStatus s = {CMPI_RC_OK, NULL};
RM> + struct inst_list list;
RM> +
RM> + inst_list_init(&list);
RM> +
RM> + s = return_console_sap(_BROKER, ref, &list);
RM> + if (s.rc != CMPI_RC_OK)
RM> + goto out;
RM> +
RM> + if (names_only)
RM> + cu_return_instance_names(results, &list);
RM> + else
RM> + cu_return_instances(results, &list);
RM> +
RM> + out:
RM> + inst_list_free(&list);
RM> + return s;
RM> +}
I didn't catch this before, but your terminology is a bit reversed in
this patch. In all of our other instance providers that behave like
this, the enum function is the one that populates an inst_list. The
return_foo() function calls the enum function and does the actual
return action to the results object.
Also, the return function should be below the enum function in the
file.
I think it's worth getting it straight before we put this in, for the
sake of consistency.
--
Dan Smith
IBM Linux Technology Center
Open Hypervisor Team
email: danms(a)us.ibm.com