- 
                            Key: CORBA3-25
- 
                            Legacy Issue Number: 4167
- 
                            Status: closed
- 
                            Source: Syracuse University ( Polar Humenn)
- 
                            Summary:The stateful boolean of the CSIIOP::CompoundSecMech forces all CSI 
 mechanisms to behave the same way with respect to state retention. This is
 problematic and makes mechanisms parametric on the POA they are
 supporting. The retention of state is actually a function of an
 established transport, not a POA.Discussion: In the architecture (OMA) POA's are the 'owners' of object references. 
 Therefore, the state retention boolean must be set there, as there is only
 one CompundSecMecList per object reference.You may have cases where multiple CSI mechanisms must support one POA. These mechanisms may span POA's as they may be defaults for many POA's. If 
 state retention is parameterized on the particular mechanism, then
 negotiating the state retention for each mechanism becomes easier to
 handle, as the state retention algorithm is mechanism specific. Therefore,
 that mechanism may operate independently of knowing the POA.This makes the TSS mechanisms to be able to work independently of the POA 
 policy.Also, for another reason, CSI state retention is based on the established 
 transport, which has nothing to do with a POA, therefore it is part of the
 CSI mechanism over which the transport it is working.I think the purpose for the "stateful" boolean was ill conceived. It was 
 thought of by some as a deficiency in your implementation and you needed
 to provide a single boolean so one could RED FLAG a security service
 "inferior" in some sense.The fact is that state retention can be inefficient in some cases. State 
 retention is actually parameter that is a function of the mechanism over a
 particular transport mechanism. One may want to use mechanisms that retain
 their state where one makes lots of invocations over a single transport
 (long live connections). (State retention is a function of transport).
 Short lived connections need not incur the overhead.Proposed Solution: Move the stateful field, as follows: module CSIIOP { 
 // type used in the body of a TAG_CSI_SEC_MECH_LIST component to describe a
 // compound mechanismstruct CompoundSecMech { AssociationOptions target_requires; IOP::TaggedComponent transport_mech; AS_ContextSec as_context_mech; SAS_ContextSec sas_context_mech; boolean stateful; }; // type corresponding to the body of a TAG_CSI_SEC_MECH_LIST component struct CompoundSecMechList { sequence <CompoundSecMech> mechanism_list; }; }; 
- 
                            Reported: CORBA 2.4.1 — Mon, 22 Jan 2001 05:00 GMT
- 
                            Disposition: Resolved — CORBA 3.0.2
- 
                            Disposition Summary:CLOSE NO CHANGE 
- 
                            Updated: Fri, 6 Mar 2015 20:58 GMT
CORBA3 — Stateful boolean causes all CSI mechanisms to operate the same way.
- Key: CORBA3-25
- OMG Task Force: Core 2002 RTF