From: Michael Chase-S. <mc...@us...> - 2013-01-31 20:16:15
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "SFCB - Small Footprint CIM Broker". The branch, master has been updated via 735acc776f56599ec1124bb7626835c2ff1b6104 (commit) from 2a0443db490c2645a509579d4f6aaf9db3ab2274 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 735acc776f56599ec1124bb7626835c2ff1b6104 Author: Michael Chase-Salerno <br...@li...> Date: Thu Jan 31 15:14:47 2013 -0500 2766931 Property filters for interop and interopserver providers ----------------------------------------------------------------------- Summary of changes: diff --git a/NEWS b/NEWS index 8bfe833..adf83c8 100644 --- a/NEWS +++ b/NEWS @@ -9,6 +9,7 @@ New features: - 3601386 Add test for EmbeddedObject output - 3599160 Add sfcbproc utility - 3601943 ObjectImpl unit test +- 2766931 Property filters for interop and interopserver providers Bugs fixed: - 3599526 segfault during ecn with classProviderSf diff --git a/interopProvider.c b/interopProvider.c index 97c5771..ef8744e 100644 --- a/interopProvider.c +++ b/interopProvider.c @@ -1067,7 +1067,9 @@ InteropProviderEnumInstances(CMPIInstanceMI * mi, if (strcasecmp(CMGetCharPtr(CMGetClassName(cop, NULL)), "cim_indicationsubscription") == 0) { filterInternalProps(ci); } - + if (properties) { + ci->ft->setPropertyFilter(ci, properties, NULL); + } CMReturnInstance(rslt, ci); } if (enm) @@ -1102,7 +1104,9 @@ InteropProviderGetInstance(CMPIInstanceMI * mi, if (strcasecmp(CMGetCharPtr(CMGetClassName(cop, NULL)), "cim_indicationsubscription") == 0) { filterInternalProps(ci); } - + if (properties) { + ci->ft->setPropertyFilter(ci, properties, NULL); + } CMReturnInstance(rslt, ci); } diff --git a/interopServerProvider.c b/interopServerProvider.c index 7b096ae..a2afdfc 100644 --- a/interopServerProvider.c +++ b/interopServerProvider.c @@ -472,6 +472,9 @@ IndServiceProviderGetInstance(CMPIInstanceMI * mi, #endif + if (properties) { + ci->ft->setPropertyFilter(ci, properties, NULL); + } CMReturnInstance(rslt,ci); CMReturnDone(rslt); @@ -497,6 +500,7 @@ IndServiceProviderEnumInstances(CMPIInstanceMI * mi, CMPIContext *ctxLocal; ctxLocal = native_clone_CMPIContext(ctx); CMPIValue val; + CMPIInstance *ci=NULL; val.string = sfcb_native_new_CMPIString("$DefaultProvider$", NULL,0); ctxLocal->ft->addEntry(ctxLocal, "rerouteToProvider", &val, CMPI_string); @@ -505,7 +509,11 @@ IndServiceProviderEnumInstances(CMPIInstanceMI * mi, indServices = CBEnumInstances(_broker, ctxLocal, op, properties, &st); while (CMHasNext(indServices, NULL)) { - CMReturnInstance(rslt, CMGetNext(indServices, NULL).value.inst); + ci=CMGetNext(indServices, NULL).value.inst; + if (properties) { + ci->ft->setPropertyFilter(ci, properties, NULL); + } + CMReturnInstance(rslt, ci); } CMReturnDone(rslt); hooks/post-receive -- SFCB - Small Footprint CIM Broker |