As discussed in yesterday's call, I did some testing against Pegasus and
sfcb regarding the necessity of this patch. Neither Pegasus nor sfcb
implement that strict input parameter checking on association calls, as
it is needed. Requests that do not fulfill the client's requested result
set (assocClass, role, resultRole) compared to the association
definition (mof) are not filterer out. They are also handed over to the
provider. An example:
association ElemenentConformsToProfile
Xen_RegisteredProfile is ConformantStandard for
Xen_ElemenentConformsToProfile
KVM_RegisteredProfile is ConformantStandard for
KVM_ElemenentConformsToProfile
A client request with "assocClass" Xen_ElemenentConformsToProfile and
an object path of a KVM_RegisteredProfile is in regard to the mof
definition a wrong request. But this request is handed over to the
provider, as neither Pegasus nor sfcb does the performance-consuming
check if the given object path does fulfill the mof definition. This
logic is handed over to the provider code.
The std_association library is already prepared for this requirement and
partly implements it. The only step that needs to be done in the
provider is offering the correct "configuration" to the std_association
logic - which is done by this patch now (and I also saw this in some
other association providers, e.g. HostedDependency). So yes, this patch
duplicates information that was already given in the mof and we could
definitely enhance std_association to generically retrieve the class
definition from the CIMOM. The behavior seen from the client would be
the same. But this minor suggested configuration step uses already
existing code by the best performance. So I recommend to apply this patch.
--
Regards
Heidi Eckhart
Software Engineer
Linux Technology Center - Open Hypervisor
heidieck(a)linux.vnet.ibm.com
**************************************************
IBM Deutschland Entwicklung GmbH
Vorsitzender des Aufsichtsrats: Martin Jetter
Geschaeftsfuehrung: Herbert Kircher
Sitz der Gesellschaft: Boeblingen
Registergericht: Amtsgericht Stuttgart, HRB 243294