Commit 1eb14e11 authored by wattelet's avatar wattelet
Browse files

TC updated.

parent 054f078d
Loading
Loading
Loading
Loading
+20 −21
Original line number Diff line number Diff line
@@ -1378,24 +1378,23 @@ module DiameterS6a_MME_TCFunctions {
            // Local variables
            var User_Name_AVP                   v_user_Name               := m_userName ( PX_USR_NAME );
            var Auth_Session_State_AVP          v_noStateMaintained       := md_auth_Session_State_noStateMaintained;
            // TODO generic subscription instead APN subscription
            var MIP_Home_Agent_Address_AVP    v_mipHomeAgentAddress     := md_mipHomeAgentAddress ( f_IPAdress(PX_MIP6_AGENT_ipv4,PX_MIP6_AGENT_ipv6) );
            var Destination_Realm_AVP         v_mIP6Destination_Realm   := m_destinationRealm ( PX_MIP6_AGENT_DEST_REALM );
            var Destination_Host_AVP          v_mip6Destination_Host    := m_destinationHost ( PX_MIP6_AGENT_DEST_HOST );
            var MIP_Home_Agent_Host_AVP       v_mipHomeAgentHost        := md_mipHomeAgentHost ( v_mIP6Destination_Realm,
                                                                                                v_mip6Destination_Host );
            var MIP6_Agent_Info_AVP           v_mIP6AgentInfo           := md_mip6_Agent_Info_AVP ( v_mipHomeAgentAddress, v_mipHomeAgentHost);
            var All_APN_Conf_Included_Id_AVP  v_allAPNConfIncludedId    := m_allAPNConfIncludedId ( 
                                                                                   MODIFIED_ADDED_APN_CONFIGURATIONS_INCLUDED_E );
            var Context_Identifier_AVP        v_contextIdentifier       := md_contextIdentifier ( PX_CONTEXT_ID );
            var PDN_Type_AVP                  v_pdnType                 := m_pdnType ( IPv4_OR_IPv6_E );
            var Service_Selection_AVP         v_serviceSelection        := m_serviceSelection ( PX_SERVICE_SEL );
            var APN_Configuration_AVP         v_apnConfiguration        := m_apnConfiguration ( v_contextIdentifier, v_pdnType,
                                                                                                v_serviceSelection, v_mIP6AgentInfo );
            var APN_Configuration_Profile_AVP v_apnConfigurationProfile := m_apnConfigurationProfile ( v_contextIdentifier,
                                                                                                       v_allAPNConfIncludedId,
                                                                                                       v_apnConfiguration );
            var Subscription_Data_AVP          v_subscriptionData        := m_subscriptionDataApnProfile ( v_apnConfigurationProfile );

			var Operator_Determined_Barring_AVP		v_operatorDeterminedBarring		:= m_operatorDeterminedBarring ( 16 );
			var Access_Restriction_Data_AVP			v_accessRestrictionData			:= m_accessRestrictionData ( 32 );
			var APN_OI_Replacement_AVP				v_aPNOIReplacement				:= m_aPNOIReplacement ( UTF8String:"AA" );
			var Regional_Subscription_Zone_Code_AVP	v_regionalSubscriptionZoneCode	:= m_regionalSubscriptionZoneCode ( '0A0B'O );
			var CSG_Subscription_Data_AVP			v_cSGSubscriptionData			:= m_cSGSubscriptionData ( m_cSGId ( 3 ));
			var Teleservice_List_AVP				v_teleserviceList				:= m_teleserviceListTsCode ( m_tSCode ( '0C0D'O ) );
			var Call_Barring_Info_AVP				v_callBarringInfo				:= m_callBarringInfo ( m_sSCode ( '0E0F'O ), m_sSStatus ( '0A0A'O ) );
			var LCS_Info_AVP						v_lCSInfo						:= m_lcsInfo_dummy;
            var Subscription_Data_AVP          v_subscriptionData        := m_subscriptionDataAll (	v_operatorDeterminedBarring,
																									v_regionalSubscriptionZoneCode,
            																						v_accessRestrictionData,
            																						v_aPNOIReplacement,
            																						v_lCSInfo,
																									v_teleserviceList,
																									v_callBarringInfo,
																									v_cSGSubscriptionData );
            var Result_Code_AVP                v_resultCode              := m_resultCode ( DIAMETER_SUCCESS_E );
            
            // Preamble
@@ -1419,7 +1418,7 @@ module DiameterS6a_MME_TCFunctions {
            
            // TP 'then': the IUT sends a CL-Answer 
            f_awaiting_IDA( mdw_IDA ( vc_sessionId, mdw_idaBodyAvps_Result (
                                v_resultCode,                           // containing a Result-Code AVP indicating DIAMETER_UNABLE_TO_COMPLY
                                v_resultCode,                           // containing a Result-Code AVP indicating DIAMETER_SUCCESS
                                v_noStateMaintained,                    // containing an Auth-Session-State AVP indicating NO_STATE_MAINTAINED
                                vc_originHost_IUT,                      // containing an Origin-Host AVP
                                vc_originRealm_IUT )));
+56 −1
Original line number Diff line number Diff line
@@ -870,6 +870,61 @@ module DiameterS6a_Templates {
                    aVP_Type      := omit
                } // End of template m_teleserviceListTsCode
                
				template (value) TS_Code_AVP m_tSCode ( in template (value) octetstring p_aVPData ) := {
					aVP_Header    := m_aVP_HeaderVid_Mbit1 ( 
										 c_ts_Code_AVP_Code, 
										 f_getEncvalueLength ( encvalue ( p_aVPData ) ), 
										 c_vendId3gpp ),
					aVP_Data       := p_aVPData
				} // End of template m_tSCode
                
                template (value) SS_Code_AVP m_sSCode ( in template (value) octetstring p_aVPData ) := {
                    aVP_Header    := m_aVP_HeaderVid_Mbit1 ( 
										 c_ss_Code_AVP_Code, 
										 f_getEncvalueLength ( encvalue ( p_aVPData ) ), 
                                         c_vendId3gpp ),
					aVP_Data       := p_aVPData
                } // End of template m_sSCode
                
                template (value) SS_Status_AVP m_sSStatus ( in template (value) octetstring p_aVPData ) := {
                    aVP_Header    := m_aVP_HeaderVid_Mbit1 ( 
										 c_ss_Status_AVP_Code, 
										 f_getEncvalueLength ( encvalue ( p_aVPData ) ), 
                                         c_vendId3gpp ),
					aVP_Data       := p_aVPData
                } // End of template m_sSStatus

                template (value) CSG_Subscription_Data_AVP m_cSGSubscriptionData ( in template (value) LibDiameter_Types_S6a_AVPs.CSG_Id_AVP p_cSGId ) := {
                    aVP_Header    := m_aVP_HeaderVid_Mbit1 ( 
										 c_csg_Subscription_Data_AVP_Code, 
										 f_getEncvalueLength ( encvalue ( p_cSGId ) ), 
                                         c_vendId3gpp ),
                	cSG_Id       		:= p_cSGId,
                	expiration_Date		:= omit,
                	service_Selection	:= omit,
                	aVP_Type			:= omit
				} // End of template m_cSGSubscriptionData
                
                template (value) LibDiameter_Types_S6a_AVPs.CSG_Id_AVP m_cSGId ( in template (value) UInt32 p_aVPData ) := {
                    aVP_Header    := m_aVP_HeaderVid_Mbit1 ( 
										 DiameterS6a_TypesAndValues.c_csg_Id_AVP_Code, 
										 f_getEncvalueLength ( encvalue ( p_aVPData ) ), 
                                         c_vendId3gpp ),
					aVP_Data       := p_aVPData
                } // End of template m_cSGId
                
                template (value) Call_Barring_Info_AVP m_callBarringInfo ( 	in template (value) SS_Code_AVP p_sSCode,
                															in template (value) SS_Status_AVP p_sSStatus  ) := {
                    aVP_Header    := m_aVP_HeaderVid_Mbit1 ( 
										 c_call_Barring_Info_AVP_Code, 
                                         f_getEncvalueLength ( encvalue ( p_sSCode )) +
                                         f_getEncvalueLength ( encvalue ( p_sSStatus )), 
                                         c_vendId3gpp ),
					sS_Code		  := p_sSCode,
					sS_Status	  := p_sSStatus,
                    aVP_Type      := omit
                } // End of template m_callBarringInfo
                
                template (value) PDP_Context_AVP m_pdpContext_dummy := {
                    aVP_Header                       := m_aVP_HeaderVid_Mbit1 ( c_pdp_Context_AVP_Code, 4, c_vendId3gpp ),
                    context_Identifier               := m_contextIdentifier_dummy,