Commit 5fe70279 authored by filatov's avatar filatov
Browse files

UAA split to MSG/Body

parent 7a207e90
Loading
Loading
Loading
Loading
+49 −0
Original line number Diff line number Diff line
/**
 *  @author     STF 480
 *  @version    $Id$
 *  @desc       This module provides Dx test functions used by the test cases
 *              for IMS-DIAMETER tests.
 */
module DiameterCxDx_Dx_TCFunctions {
    // LibCommon
    import from LibCommon_Sync {function f_selfOrClientSyncAndVerdict;
                                const c_prDone, c_tbDone, c_poDone;}
    import from LibCommon_VerdictControl all ;

    // LibDiameter
    import from LibDiameter_Types_CxDx_AVPs all;
    import from LibDiameter_TypesAndValues all;
    import from LibDiameter_Templates all;
    import from LibDiameter_Interface all;
    import from LibDiameter_Steps all;
    import from LibDiameter_Types_Base_AVPs all;

    //DiameterCxDx
    import from DiameterCxDx_Templates all;
    import from DiameterCxDx_Steps all;
    import from DiameterCxDx_PIXITS all;


    group TP_SLFRole{ // §5.2.2.1
        group TP_SLFRole_UA {//Dx UA
        } // group TP_SLFRole_UA
        group TP_SLFRole_SA {//Dx SA
        } // group TP_SLFRole_SA
        group TP_SLFRole_LI {//Dx LI
        } // group TP_SLFRole_LI
        group TP_SLFRole_MA {//Dx MA
        } // group TP_SLFRole_MA
    } // group TP_SLFRole    

    group TP_CSCFRole{ // §5.2.1.2
        group TP_CSCFRole_UA {//Dx UA
        } // group TP_CSCFRole_UA
        group TP_CSCFRole_SA {//Dx SA
        } // group TP_CSCFRole_SA
        group TP_CSCFRole_LI {//Dx LI
        } // group TP_CSCFRole_LI
        group TP_CSCFRole_MA {//Dx MA
        } // group TP_CSCFRole_LI
    } // group TP_CSCFRole    
    
}// end module DiameterCx_Dx_TCFunctions
+68 −60
Original line number Diff line number Diff line
/**
 *  @author   STF 480
 *  @version  $Id: $
 *  @version  $Id$
 *  @desc     This module defines Cx Diameter Templates for message, header, and
 *            structured types. <br>
 *            Note that any changes made to the definitions in this module
@@ -13,7 +13,7 @@

module DiameterCxDx_Templates {

    import from LibCommon_BasicTypesAndValues {type UInt32, UInt24;};
    import from LibCommon_BasicTypesAndValues {type UInt32, UInt24;}

    import from LibDiameter_Types_Base_AVPs all;
    import from LibDiameter_Types_CxDx_AVPs all;
@@ -48,7 +48,11 @@ module DiameterCxDx_Templates {

          	}//end group sendingTemplatesForAVPs
          	group awaitingTemplatesForAVPs{

	            template Redirect_Host_AVP mw_redirectHost(template (present) Diameter_Identity p_avpData) := 
    	        {
        	        aVP_Header := mw_aVP_Header_Vbit0Mbit1(c_redirect_Host_AVP_Code),
            	    aVP_Data := p_avpData
            	}
			}//end group awaitingTemplatesForAVPs
        } //end group SpecificAVPHeaders
    } //end group HeaderFieldTemplates
@@ -71,7 +75,7 @@ module DiameterCxDx_Templates {
                    uAR_Body := {
                        vendor_Specific_Application_Id := m_vendor_Specific_Appl_Id_Cx,
                        auth_Application_Id   := omit,                       //not present in CxDx TS 129 229
                        auth_Session_State := m_auth_Session_State_dummy,
                        auth_Session_State := m_auth_Session_State_no_maintained,
                        origin_Host := p_originHost,
                        origin_Realm := p_originRealm,
                        destination_Realm := p_destinationRealm,
@@ -129,18 +133,23 @@ module DiameterCxDx_Templates {
            }//end group CxBasic_request_templates_receive
            group CxDxBasic_answer_templates_send {


                template UAA_MSG m_UAA_basic(template Session_Id_AVP        p_sessionId,
                                             template Origin_Host_AVP       p_originHost,
                                             template Origin_Realm_AVP      p_originRealm) 
                  modifies m_UAA_dummy:= {
                template (value) UAA_MSG m_UAA_basic(template (value) Session_Id_AVP p_sessionId,
                							 template (value) UAA_Body_AVP   p_uAABody
                ) := {
                    header := m_diameterHeaderAns_dummy(UAA_E, c_applId3GPPCxDx),
                    session_Id := p_sessionId,
                    uAA_Body := {
                    uAA_Body := p_uAABody
                }

                template (value) UAA_Body_AVP m_UAA_Body_basic (template (value) Origin_Host_AVP   p_originHost,
                												template (value) Origin_Realm_AVP  p_originRealm,
                												template (value) Result_Code_AVP   p_resultCode := m_resultCode_dummy)
                												
                modifies m_UAA_Body_dummy := {
                    vendor_Specific_Application_Id := m_vendor_Specific_Appl_Id_Cx,
                    auth_Application_Id := omit,                       //not present in CxDx TS 129 229
                        auth_Session_State := m_auth_Session_State_dummy,
                        result_Code := m_resultCode_dummy,
                    auth_Session_State := m_auth_Session_State_no_maintained,
                    result_Code := p_resultCode,
                    origin_Host := p_originHost,
                    origin_Realm := p_originRealm,
                    sIP_Server_URI := omit,                            //not present in CxDx TS 129 229
@@ -159,40 +168,25 @@ module DiameterCxDx_Templates {
                    route_Record := omit,
                    aVP_Type := omit
                }
                }

            }//end group CxBasic_answer_templates_send
            group CxDxBasic_answer_templates_receive {

                template UAA_MSG mw_UAA_basic (template Session_Id_AVP p_sessionId,
                                               template Origin_Host_AVP p_originHost,
                                               template Origin_Realm_AVP p_originRealm)
                  modifies mw_UAA_dummy:= {
                template UAA_MSG mw_UAA_MSG (template (present) Session_Id_AVP p_sessionId,
                							 template (present) UAA_Body_AVP p_uAABody
                ) := {
                    header := mw_diameterHeaderAns_dummy(UAA_E, c_applId3GPPCxDx),
                    session_Id := p_sessionId,
                    uAA_Body := {
                        vendor_Specific_Application_Id := *,      //only TS129 229
                        auth_Application_Id := ?,
                        auth_Session_State := ?,
                        result_Code := *,
                        origin_Host := p_originHost,
                        origin_Realm := p_originRealm,
                        sIP_Server_URI := omit,                   //not present in CxDx TS 129 229
                        sIP_Server_Capabilities := omit,          //not present in CxDx TS 129 229
                        authorization_Lifetime := omit,           //not present in CxDx TS 129 229
                        auth_Grace_Period := omit,                //not present in CxDx TS 129 229
                        redirect_Host := omit,                    //not present in CxDx TS 129 229
                        redirect_Host_Usage := omit,              //not present in CxDx TS 129 229
                        redirect_Max_Cache_Time := omit,          //not present in CxDx TS 129 229
                    uAA_Body := p_uAABody
                }
                
                template UAA_Body_AVP mw_UAA_Body_basic
                modifies mw_UAA_Body_dummy := {
                    vendor_Specific_Application_Id := ?,      //only TS129 229
                    experimental_Result := *,                 //only TS129 229
                    supported_Features := *,                  //only TS129 229
                    server_Name := *,                         //only TS129 229
                    server_Capabilities := *,                 //only TS129 229
                        failed := *,                              //only TS129 229
                        proxy_Info := *,
                        route_Record := *,
                        aVP_Type := *
                    }
                    failed := *                              //only TS129 229
                }                

            }//end group CxBasic_answer_templates_receive
@@ -216,12 +210,26 @@ module DiameterCxDx_Templates {
    	
        group DxModified_temlates {
            group DxModified_request_templates_send {
                template UAR_MSG m_UAR_Dx(	template Session_Id_AVP p_sessionId,
										  	template Origin_Host_AVP p_originHost,
										  	template Origin_Realm_AVP p_originRealm,
										  	template Destination_Realm_AVP p_destinationRealm,
										  	template User_Name_AVP p_userName,
										  	template Public_Identity_AVP p_public_Identity,
										  	template Visited_Network_Id_AVP p_visited_Network_Id)
				modifies m_UAR_basic := {}

            } //     end group DxModified_request_templates_send
    
            group DxModified_request_templates_receive {

				template UAA_Body_AVP mw_UAA_Body_Dx(template Origin_Host_AVP p_originHost,
						   							 template Origin_Realm_AVP p_originRealm,
						   						     template Result_Code_AVP p_resultCode := mw_resultCode(DIAMETER_REDIRECT_INDICATION_E))
				modifies mw_UAA_Body_basic := {
				    redirect_Host := mw_redirectHost(?)
				}
            } //     end group DxModified_request_templates_receive
            
            group DxModified_answer_templates_send {