Loading LibDiameter @ 8ae64e39 Original line number Original line Diff line number Diff line Subproject commit f6a0410faaf67d52748e5c694c8944cc5d00641c Subproject commit 8ae64e39ccce0fefa8258e6a69bb33909f5fef47 ttcn/DiameterShDh_PIXITS.ttcn3 +2 −0 Original line number Original line Diff line number Diff line Loading @@ -162,6 +162,8 @@ module DiameterShDh_PIXITS { modulepar UTF8String PX_IUT_SIP_URL := "sip:stf549@etsi.org"; modulepar UTF8String PX_IUT_SIP_URL := "sip:stf549@etsi.org"; modulepar octetstring PX_DSAI_TAG := '00'O; } // End of group DiameterCommonShDhData } // End of group DiameterCommonShDhData group SipParameters { group SipParameters { Loading ttcn/DiameterShDh_TCFunctions.ttcn3 +57 −9 Original line number Original line Diff line number Diff line Loading @@ -156,7 +156,7 @@ module DiameterShDh_TCFunctions { mdw_uDA( mdw_uDA( vc_sessionId, // containing a Session-ID AVP vc_sessionId, // containing a Session-ID AVP mdw_udaBodyExperimentalAvps( mdw_udaBodyExperimentalAvps( mw_experimentalResult(DIAMETER_ERROR_USER_DATA_CANNOT_BE_READ), mw_experimentalResult(DIAMETER_ERROR_USER_DATA_CANNOT_BE_READ_E), vc_originHost_IUT, // containing an Origin-Host AVP vc_originHost_IUT, // containing an Origin-Host AVP vc_originRealm_IUT vc_originRealm_IUT )) )) Loading Loading @@ -279,7 +279,7 @@ module DiameterShDh_TCFunctions { mdw_uDA( mdw_uDA( vc_sessionId, // containing a Session-ID AVP vc_sessionId, // containing a Session-ID AVP mdw_udaBodyExperimentalAvps( mdw_udaBodyExperimentalAvps( mw_experimentalResult(DIAMETER_ERROR_OPERATION_NOT_ALLOWED), mw_experimentalResult(DIAMETER_ERROR_OPERATION_NOT_ALLOWED_E), vc_originHost_IUT, // containing an Origin-Host AVP vc_originHost_IUT, // containing an Origin-Host AVP vc_originRealm_IUT vc_originRealm_IUT )) )) Loading Loading @@ -320,7 +320,7 @@ module DiameterShDh_TCFunctions { mdw_uDA( mdw_uDA( vc_sessionId, // containing a Session-ID AVP vc_sessionId, // containing a Session-ID AVP mdw_udaBodyExperimentalAvps( mdw_udaBodyExperimentalAvps( mw_experimentalResult(DIAMETER_ERROR_OPERATION_NOT_ALLOWED), mw_experimentalResult(DIAMETER_ERROR_OPERATION_NOT_ALLOWED_E), vc_originHost_IUT, // containing an Origin-Host AVP vc_originHost_IUT, // containing an Origin-Host AVP vc_originRealm_IUT vc_originRealm_IUT )) )) Loading @@ -342,7 +342,29 @@ module DiameterShDh_TCFunctions { f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); //TODO TestBody f_send_UDR( md_uDR( vc_sessionId, md_udrBodyAvps( vc_originHost, // containing an Origin-Host AVP vc_originRealm, // containing an Origin-Realm AVP vc_destinationRealm, // containing a Destination-Realm AVP m_specific_user_Identity ( m_public_user_identity(PX_PublicUser_MSISDN) ) ) ) ); f_awaiting_UDA( mdw_uDA( vc_sessionId, // containing a Session-ID AVP mdw_udaBodyExperimentalAvps( mw_experimentalResult(DIAMETER_USER_DATA_NOT_AVAILABLE_E), vc_originHost_IUT, // containing an Origin-Host AVP vc_originRealm_IUT )) ); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); Loading Loading @@ -736,7 +758,7 @@ module DiameterShDh_TCFunctions { vc_sessionId, // containing a Session-ID AVP vc_sessionId, // containing a Session-ID AVP mdw_puaBodyAvps( mdw_puaBodyAvps( *, *, mw_experimentalResultCode(DIAMETER_ERROR_USER_DATA_CANNOT_BE_MODIFIED), mw_experimentalResult(DIAMETER_ERROR_USER_DATA_CANNOT_BE_MODIFIED_E), vc_originHost_IUT, // containing an Origin-Host AVP vc_originHost_IUT, // containing an Origin-Host AVP vc_originRealm_IUT vc_originRealm_IUT )) )) Loading Loading @@ -1614,9 +1636,7 @@ module DiameterShDh_TCFunctions { m_server_name( // Server-Name AVP m_server_name( // Server-Name AVP PX_IUT_SIP_URL // indicating SIP URL of the IUT PX_IUT_SIP_URL // indicating SIP URL of the IUT ) ) ))); ))); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); f_send_UDA( f_send_UDA( Loading @@ -1641,8 +1661,36 @@ module DiameterShDh_TCFunctions { f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // TODO TestBody // TestBody // to indicate a user data handling procedure action("The IUT is requested to indicate a DSAI sends a UD-Request with DSAI-Tag AVP"); // Clause 'then': the IUT sends an UD-Request and receives an UD-Answer f_awaiting_UDR( mdw_uDR_Header_UDRBody( ?, ?, // containing a Session-ID AVP mdw_udrBodyAvps_dsai( vc_originHost_IUT, // containing an Origin-Host AVP vc_originRealm_IUT, // containing an Origin-Realm AVP vc_destinationRealm_IUT, // containing a Destination-Realm AVP // containing a User-Identity AVP m_data_Reference( // containing a Data-Reference AVP DSAI_E // indicating DSAI (19) ), m_dSAI_Tag_AVP( // containing a DSAI-Tag AVP PX_DSAI_TAG ) ))); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); f_send_UDA( md_uDA( vc_sessionId, // Set in f_awaiting_UDR md_udaBodyAvps( m_resultCode(DIAMETER_SUCCESS_E), vc_originHost, vc_originRealm ))); f_postamble_Sh_HSS(); f_postamble_Sh_HSS(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); Loading ttcn/DiameterShDh_Templates.ttcn3 +20 −1 Original line number Original line Diff line number Diff line Loading @@ -121,6 +121,14 @@ module DiameterShDh_Templates { aVP_Header := m_aVP_HeaderVid_Mbit1(c_server_Name_AVP_Code, 4, c_vendId3gpp), aVP_Header := m_aVP_HeaderVid_Mbit1(c_server_Name_AVP_Code, 4, c_vendId3gpp), aVP_Data := p_aVP_Data aVP_Data := p_aVP_Data } } template (value) DSAI_Tag_AVP m_dSAI_Tag_AVP( in template (value) octetstring p_aVP_Data ) := { aVP_Header := m_aVP_HeaderVid_Mbit1(c_dSAI_Tag_AVP_Code, 4, c_vendId3gpp), aVP_Data := p_aVP_Data } } } } // End of group SpecificAVPHeaders } // End of group SpecificAVPHeaders Loading Loading @@ -347,6 +355,17 @@ module DiameterShDh_Templates { server_Name := p_server_Name server_Name := p_server_Name } // End of template mdw_udrBodyAvps_initial_filter_criteria } // End of template mdw_udrBodyAvps_initial_filter_criteria template UDR_Body_AVP mdw_udrBodyAvps_dsai( template (present) Origin_Host_AVP p_originHost := ?, template (present) Origin_Realm_AVP p_originRealm := ?, template (present) Destination_Realm_AVP p_destinationRealm := ?, template (present) Data_Reference_AVP p_data_Reference := ?, template (present) DSAI_Tag_AVP p_dSAI_Tag := ? ) modifies mdw_udrBodyAvps := { data_Reference := superset(p_data_Reference), dSAI_Tag := superset(p_dSAI_Tag) } // End of template mdw_udrBodyAvps_dsai } // End of group udr_msg } // End of group udr_msg group pnr_msg { group pnr_msg { Loading Loading @@ -657,7 +676,7 @@ module DiameterShDh_Templates { template (present) PUA_Body_AVP mdw_puaBodyAvps( template (present) PUA_Body_AVP mdw_puaBodyAvps( template (present) Result_Code_AVP p_resultCode, template (present) Result_Code_AVP p_resultCode, template (present) Experimental_Result_Code_AVP p_exp_rescode, template (present) Experimental_Result_AVP p_exp_rescode, template (present) Origin_Host_AVP p_originHost, template (present) Origin_Host_AVP p_originHost, template (present) Origin_Realm_AVP p_originRealm template (present) Origin_Realm_AVP p_originRealm ) modifies mw_PUA_Body_dummy := { ) modifies mw_PUA_Body_dummy := { Loading Loading
LibDiameter @ 8ae64e39 Original line number Original line Diff line number Diff line Subproject commit f6a0410faaf67d52748e5c694c8944cc5d00641c Subproject commit 8ae64e39ccce0fefa8258e6a69bb33909f5fef47
ttcn/DiameterShDh_PIXITS.ttcn3 +2 −0 Original line number Original line Diff line number Diff line Loading @@ -162,6 +162,8 @@ module DiameterShDh_PIXITS { modulepar UTF8String PX_IUT_SIP_URL := "sip:stf549@etsi.org"; modulepar UTF8String PX_IUT_SIP_URL := "sip:stf549@etsi.org"; modulepar octetstring PX_DSAI_TAG := '00'O; } // End of group DiameterCommonShDhData } // End of group DiameterCommonShDhData group SipParameters { group SipParameters { Loading
ttcn/DiameterShDh_TCFunctions.ttcn3 +57 −9 Original line number Original line Diff line number Diff line Loading @@ -156,7 +156,7 @@ module DiameterShDh_TCFunctions { mdw_uDA( mdw_uDA( vc_sessionId, // containing a Session-ID AVP vc_sessionId, // containing a Session-ID AVP mdw_udaBodyExperimentalAvps( mdw_udaBodyExperimentalAvps( mw_experimentalResult(DIAMETER_ERROR_USER_DATA_CANNOT_BE_READ), mw_experimentalResult(DIAMETER_ERROR_USER_DATA_CANNOT_BE_READ_E), vc_originHost_IUT, // containing an Origin-Host AVP vc_originHost_IUT, // containing an Origin-Host AVP vc_originRealm_IUT vc_originRealm_IUT )) )) Loading Loading @@ -279,7 +279,7 @@ module DiameterShDh_TCFunctions { mdw_uDA( mdw_uDA( vc_sessionId, // containing a Session-ID AVP vc_sessionId, // containing a Session-ID AVP mdw_udaBodyExperimentalAvps( mdw_udaBodyExperimentalAvps( mw_experimentalResult(DIAMETER_ERROR_OPERATION_NOT_ALLOWED), mw_experimentalResult(DIAMETER_ERROR_OPERATION_NOT_ALLOWED_E), vc_originHost_IUT, // containing an Origin-Host AVP vc_originHost_IUT, // containing an Origin-Host AVP vc_originRealm_IUT vc_originRealm_IUT )) )) Loading Loading @@ -320,7 +320,7 @@ module DiameterShDh_TCFunctions { mdw_uDA( mdw_uDA( vc_sessionId, // containing a Session-ID AVP vc_sessionId, // containing a Session-ID AVP mdw_udaBodyExperimentalAvps( mdw_udaBodyExperimentalAvps( mw_experimentalResult(DIAMETER_ERROR_OPERATION_NOT_ALLOWED), mw_experimentalResult(DIAMETER_ERROR_OPERATION_NOT_ALLOWED_E), vc_originHost_IUT, // containing an Origin-Host AVP vc_originHost_IUT, // containing an Origin-Host AVP vc_originRealm_IUT vc_originRealm_IUT )) )) Loading @@ -342,7 +342,29 @@ module DiameterShDh_TCFunctions { f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); //TODO TestBody f_send_UDR( md_uDR( vc_sessionId, md_udrBodyAvps( vc_originHost, // containing an Origin-Host AVP vc_originRealm, // containing an Origin-Realm AVP vc_destinationRealm, // containing a Destination-Realm AVP m_specific_user_Identity ( m_public_user_identity(PX_PublicUser_MSISDN) ) ) ) ); f_awaiting_UDA( mdw_uDA( vc_sessionId, // containing a Session-ID AVP mdw_udaBodyExperimentalAvps( mw_experimentalResult(DIAMETER_USER_DATA_NOT_AVAILABLE_E), vc_originHost_IUT, // containing an Origin-Host AVP vc_originRealm_IUT )) ); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); Loading Loading @@ -736,7 +758,7 @@ module DiameterShDh_TCFunctions { vc_sessionId, // containing a Session-ID AVP vc_sessionId, // containing a Session-ID AVP mdw_puaBodyAvps( mdw_puaBodyAvps( *, *, mw_experimentalResultCode(DIAMETER_ERROR_USER_DATA_CANNOT_BE_MODIFIED), mw_experimentalResult(DIAMETER_ERROR_USER_DATA_CANNOT_BE_MODIFIED_E), vc_originHost_IUT, // containing an Origin-Host AVP vc_originHost_IUT, // containing an Origin-Host AVP vc_originRealm_IUT vc_originRealm_IUT )) )) Loading Loading @@ -1614,9 +1636,7 @@ module DiameterShDh_TCFunctions { m_server_name( // Server-Name AVP m_server_name( // Server-Name AVP PX_IUT_SIP_URL // indicating SIP URL of the IUT PX_IUT_SIP_URL // indicating SIP URL of the IUT ) ) ))); ))); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); f_send_UDA( f_send_UDA( Loading @@ -1641,8 +1661,36 @@ module DiameterShDh_TCFunctions { f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // TODO TestBody // TestBody // to indicate a user data handling procedure action("The IUT is requested to indicate a DSAI sends a UD-Request with DSAI-Tag AVP"); // Clause 'then': the IUT sends an UD-Request and receives an UD-Answer f_awaiting_UDR( mdw_uDR_Header_UDRBody( ?, ?, // containing a Session-ID AVP mdw_udrBodyAvps_dsai( vc_originHost_IUT, // containing an Origin-Host AVP vc_originRealm_IUT, // containing an Origin-Realm AVP vc_destinationRealm_IUT, // containing a Destination-Realm AVP // containing a User-Identity AVP m_data_Reference( // containing a Data-Reference AVP DSAI_E // indicating DSAI (19) ), m_dSAI_Tag_AVP( // containing a DSAI-Tag AVP PX_DSAI_TAG ) ))); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); f_send_UDA( md_uDA( vc_sessionId, // Set in f_awaiting_UDR md_udaBodyAvps( m_resultCode(DIAMETER_SUCCESS_E), vc_originHost, vc_originRealm ))); f_postamble_Sh_HSS(); f_postamble_Sh_HSS(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); Loading
ttcn/DiameterShDh_Templates.ttcn3 +20 −1 Original line number Original line Diff line number Diff line Loading @@ -121,6 +121,14 @@ module DiameterShDh_Templates { aVP_Header := m_aVP_HeaderVid_Mbit1(c_server_Name_AVP_Code, 4, c_vendId3gpp), aVP_Header := m_aVP_HeaderVid_Mbit1(c_server_Name_AVP_Code, 4, c_vendId3gpp), aVP_Data := p_aVP_Data aVP_Data := p_aVP_Data } } template (value) DSAI_Tag_AVP m_dSAI_Tag_AVP( in template (value) octetstring p_aVP_Data ) := { aVP_Header := m_aVP_HeaderVid_Mbit1(c_dSAI_Tag_AVP_Code, 4, c_vendId3gpp), aVP_Data := p_aVP_Data } } } } // End of group SpecificAVPHeaders } // End of group SpecificAVPHeaders Loading Loading @@ -347,6 +355,17 @@ module DiameterShDh_Templates { server_Name := p_server_Name server_Name := p_server_Name } // End of template mdw_udrBodyAvps_initial_filter_criteria } // End of template mdw_udrBodyAvps_initial_filter_criteria template UDR_Body_AVP mdw_udrBodyAvps_dsai( template (present) Origin_Host_AVP p_originHost := ?, template (present) Origin_Realm_AVP p_originRealm := ?, template (present) Destination_Realm_AVP p_destinationRealm := ?, template (present) Data_Reference_AVP p_data_Reference := ?, template (present) DSAI_Tag_AVP p_dSAI_Tag := ? ) modifies mdw_udrBodyAvps := { data_Reference := superset(p_data_Reference), dSAI_Tag := superset(p_dSAI_Tag) } // End of template mdw_udrBodyAvps_dsai } // End of group udr_msg } // End of group udr_msg group pnr_msg { group pnr_msg { Loading Loading @@ -657,7 +676,7 @@ module DiameterShDh_Templates { template (present) PUA_Body_AVP mdw_puaBodyAvps( template (present) PUA_Body_AVP mdw_puaBodyAvps( template (present) Result_Code_AVP p_resultCode, template (present) Result_Code_AVP p_resultCode, template (present) Experimental_Result_Code_AVP p_exp_rescode, template (present) Experimental_Result_AVP p_exp_rescode, template (present) Origin_Host_AVP p_originHost, template (present) Origin_Host_AVP p_originHost, template (present) Origin_Realm_AVP p_originRealm template (present) Origin_Realm_AVP p_originRealm ) modifies mw_PUA_Body_dummy := { ) modifies mw_PUA_Body_dummy := { Loading