[Libvirt-cim] [PATCH] [RFC] [CU] Turn std_indication's awesome knob to eleven

Heidi Eckhart heidieck at linux.vnet.ibm.com
Fri Feb 8 09:37:54 UTC 2008


Jay Gagnon wrote:
> diff -r 60ecfe23d68c -r 7feaabeb36ce instance_util.c
> --- a/instance_util.c	Tue Feb 05 16:01:32 2008 -0500
> +++ b/instance_util.c	Thu Feb 07 16:36:40 2008 -0500
> @@ -251,6 +251,27 @@ CMPIInstance *cu_dup_instance(const CMPI
>
>   out:
>          return dest;
> +}
> +
> +char *classname_from_inst(const CMPIBroker *broker,
> +                          CMPIInstance *inst,
> +                          CMPIStatus *s)
> +{
> +        char *ret = NULL;
> +
> +        CMPIObjectPath *ref;
> +        ref = CMGetObjectPath(inst, s);
> +        if ((s->rc != CMPI_RC_OK) || CMIsNullObject(ref)) {
> +                cu_statusf(broker, s,
> +                           CMPI_RC_ERR_FAILED,
> +                           "Could not get objectpath from instance");
> +                goto out;
> +        }
> +        
> +        ret = strdup(CLASSNAME(ref));
> +
> + out:
> +        return ret;
>  }
>
>  /*
> diff -r 60ecfe23d68c -r 7feaabeb36ce libcmpiutil.h
> --- a/libcmpiutil.h	Tue Feb 05 16:01:32 2008 -0500
> +++ b/libcmpiutil.h	Thu Feb 07 16:36:40 2008 -0500
> @@ -413,6 +413,19 @@ CMPIStatus cu_validate_ref(const CMPIBro
>  CMPIStatus cu_validate_ref(const CMPIBroker *broker,
>                             const CMPIObjectPath *ref,
>                             const CMPIInstance *inst);
> +
> +/**
> + * Returns the classname from an instance without forcing user to get 
> + * ObjectPath first.
> + *
> + * @param broker A pointer to the current broker
> + * @param inst Instance to examine
> + * @param s An out pointer for returning status if error occurs
> + * @returns Classname of instance (must be freed), NULL on failure
> + */
> +char *classname_from_inst(const CMPIBroker *broker,
> +                          CMPIInstance *inst,
> +                          CMPIStatus *s);
>
>  #define DEFAULT_EIN(pn)                                                 \
>          static CMPIStatus pn##EnumInstanceNames(CMPIInstanceMI *self,   \
>
>   
Please let me play the PatchCO today - is this really part of the 
indication patch ;) ?

-- 
Regards

Heidi Eckhart
Software Engineer
IBM Linux Technology Center - Open Hypervisor




More information about the Libvirt-cim mailing list