Loading ttcn/LibIms_Steps.ttcn +47 −102 Original line number Diff line number Diff line Loading @@ -28,7 +28,6 @@ module LibIms_Steps group parameterOperations { /** * * @desc functions add new via parameter * @param p_message (request) SIP message to be used to prepair via header * @param p_userprofile user profile Loading Loading @@ -107,7 +106,6 @@ module LibIms_Steps } /** * * @desc functions add new recordRoute parameter * @param p_message (request) SIP message to be used to prepair via header * @param p_userprofile user profile Loading Loading @@ -136,8 +134,7 @@ module LibIms_Steps group fieldOperations { /* * /** * @desc sets BYE header fields (IMS addresses) * extension of general settings from LibSip basic function * @param p_cSeq_s current cSeq Loading @@ -158,8 +155,7 @@ module LibIms_Steps }// end f_setHeadersBYE /* * /** * @desc sets CANCEL header fields (IMS addresses) * extension of general settings from LibSip basic function * @param p_cSeq_s current cSeq Loading @@ -176,7 +172,6 @@ module LibIms_Steps }// end f_setHeadersCANCEL /** * * @desc sets headers for forward request from AS in case if AS acts as Proxy * @param p_proxyMode true = proxyMode, false = B2BMode */ Loading @@ -201,7 +196,6 @@ module LibIms_Steps }// end function f_setHeadersForwardRequest /** * * @desc sets header fields for forward request from AS in case if AS acts as Proxy */ function f_setHeadersForwardResponseFromAS (inout CSeq p_cSeq_s) runs on ImsComponent Loading @@ -219,8 +213,7 @@ module LibIms_Steps f_removeOwnViaParameter(v_response); }// end function f_setHeadersForwardResponse /* * /** * @desc sets Invite header fields (IMS addresses) * extension of general settings from LibSip basic function * @param p_cSeq_s current cSeq Loading @@ -244,8 +237,7 @@ module LibIms_Steps }// end f_setHeadersINVITE /* * /** * @desc sets Invite header fields (IMS addresses) * extension of general settings from LibSip basic function * @param p_cSeq_s current cSeq Loading @@ -269,8 +261,7 @@ module LibIms_Steps }// end f_setHeadersUPDATE /* * /** * @desc sets Message header fields (IMS addresses) * extension of general settings from LibSip basic function * @param p_cSeq_s current cSeq Loading @@ -289,8 +280,7 @@ module LibIms_Steps }// end f_setHeadersMESSAGE /* * /** * @desc sets Notify header fields (IMS addresses) * extension of general settings from LibSip basic function * @param p_cSeq_s current cSeq Loading Loading @@ -318,8 +308,7 @@ module LibIms_Steps }// end f_setHeadersNOTIFY /* * /** * @desc sets Publish header fields (IMS addresses) * extension of general settings from LibSip basic function * @param p_cSeq_s current cSeq Loading Loading @@ -353,7 +342,6 @@ module LibIms_Steps }// end f_setHeadersPUBLISH /** ** * @desc sets Subscribe header fields (IMS addresses) * extension of general settings from LibSip basic function * @param p_cSeq_s current cSeq Loading Loading @@ -437,7 +425,6 @@ module LibIms_Steps }// end function f_setHeadersReINVITE /** * * @desc sets component variables related to message header fields * when sending requests from the home I-CSCF (TS) to the visited P-CSCF (SUT) * (message type independent: CSeq, contact, via), function uses information from Loading Loading @@ -469,7 +456,6 @@ module LibIms_Steps }// end function f_setHeadersGeneral_ICSCF /** * * @desc sets header field for the next outgoing REGISTER message * from the visited P-CSCF to the home I-CSCF * @param p_cSeq_s CSeq parameter to be applied Loading Loading @@ -520,8 +506,7 @@ module LibIms_Steps /* * /** * @desc sets REFER header fields (IMS addresses) * extension of general settings from LibSip basic function * @param p_cSeq_s current cSeq Loading @@ -545,7 +530,7 @@ module LibIms_Steps }// end f_setHeadersREFER /* /** * @desc sets REFER header fields (IMS addresses) * extension of general settings from LibSip basic function * @param p_cSeq_s current cSeq Loading Loading @@ -583,8 +568,8 @@ module LibIms_Steps group awaitingMessage { } group sendMessage { /** * * @desc send PRACK message * @param p_request template of the message to be sent */ Loading Loading @@ -621,8 +606,7 @@ module LibIms_Steps } group globalSteps { /* * /** * @desc sets user parameters with PIXIT values * @param p_user identifies the selected user configuration and location * @verdict Loading Loading @@ -1037,8 +1021,7 @@ module LibIms_Steps } /* * /** * @desc sets user parameters with PIXIT values * @param p_user identifies the selected user configuration and location * @verdict Loading Loading @@ -1094,8 +1077,7 @@ module LibIms_Steps } } /* * /** * @desc retrieves user DomainPort value of the interface profile * @param p_interface identifies the selected interface * @return DomainPort template Loading @@ -1105,8 +1087,7 @@ module LibIms_Steps return {p_userProfile.homeDomain, p_userProfile.currPort} } /* * /** * @desc retrieves HostPort value of the interface profile * @param p_interface identifies the selected interface * @return HostPort template Loading @@ -1116,8 +1097,7 @@ module LibIms_Steps return {p_interface.SUTIpaddr,p_interface.SUTPort} } /* * /** * @desc retrieves DomainPort value of the interface profile * @param p_interface identifies the selected interface * @return DomainPort template Loading @@ -1127,7 +1107,7 @@ module LibIms_Steps return {p_interface.SUTHomeDomain,p_interface.SUTPort} } /* /** * @desc retrieves SipUrl of the interface profile * @param p_interface identifies the selected interface * @return SipUrl template Loading @@ -1142,7 +1122,6 @@ module LibIms_Steps group registration { /** * * @desc registration and authentication with MD5 * @param p_cSeq_s cseq parameter * @param p_auth flag indicating if authentication is needed Loading Loading @@ -1187,7 +1166,6 @@ module LibIms_Steps }//end function f_Registration_IMS /** * * @desc awaiting UE1 registration (with authentication) * @param p_cSeq_s cseq parameter */ Loading Loading @@ -1217,15 +1195,16 @@ module LibIms_Steps ); // 200OK to complete the request vc_contact := vc_request.msgHeader.contact; if (isvalue(vc_request.msgHeader.contact)) { vc_contact := valueof(vc_request.msgHeader.contact); vc_contact.contactBody.contactAddresses[0].contactParams := {{"expires",int2str(3600)}}; } v_passociated_url := vc_caller_From.addressField.nameAddr.addrSpec; f_sendResponse(m_Response_2xxonREGISTER_IMS(c_statusLine200,vc_callId, vc_cSeq,vc_callee_From, vc_callee_To, vc_via,vc_contact,f_initSipUrl(c_userProfile_SCSCFwithHomeUE),v_passociated_url)); }//end function f_awaitingRegistration_IMS /** * * @desc awaiting UE1 registration (with authentication) * @param p_cSeq_s cseq parameter */ Loading @@ -1249,8 +1228,10 @@ module LibIms_Steps //f_awaitingREGISTER(mw_REGISTER_authorizedRequest_IMS(m_Authorization_digest(mw_digestResponse((c_Integrity_protected_yes,c_Integrity_protected_ip_assoc_pending))))); // 200OK to complete the request vc_contact := vc_request.msgHeader.contact; if (isvalue(vc_request.msgHeader.contact)) { vc_contact := valueof(vc_request.msgHeader.contact); vc_contact.contactBody.contactAddresses[0].contactParams := {{"expires",int2str(3600)}}; } v_passociated_url := vc_caller_From.addressField.nameAddr.addrSpec; f_sendResponse(m_Response_2xxonREGISTER_IMS(c_statusLine200,vc_callId, vc_cSeq,vc_callee_From, vc_callee_To, vc_via,vc_contact,f_initSipUrl(c_userProfile_SCSCFwithHomeUE),v_passociated_url)); vc_DeregDone := false; Loading @@ -1258,7 +1239,6 @@ module LibIms_Steps /** * * @desc remove registration * @param p_cSeq_s cseq parameter */ Loading Loading @@ -1317,8 +1297,7 @@ module LibIms_Steps group preambles { /* * /** * @desc Sets variables and default initialization for user profile where proxy role is present * @param p_userprofile user profile of call * @param p_cSeq_s cseq parameter Loading @@ -1332,8 +1311,7 @@ module LibIms_Steps f_IMS_preamble_woRegistration(p_userprofile, p_cSeq_s); } /* * /** * @desc Sets variables and default initialization for user profile * @param p_userprofile user profile of call * @param p_cSeq_s cseq parameter Loading @@ -1356,7 +1334,6 @@ module LibIms_Steps //TODO STF471 added /** * * @desc Sets variables and default initialization for user profile * @param p_userprofile user profile of call * @param p_cSeq_s cseq parameter Loading @@ -1376,8 +1353,7 @@ module LibIms_Steps vc_sdp_local := valueof(m_SDP_bandwidth(m_media_dynPT(PX_SIP_SDP_dyn, PX_SIP_SDP_encoding), vc_userprofile)); } /* * /** * @desc Sets variables and default initialization for user profile and handle registration and authentication with MD5 * @param p_userprofile user profile of call * @param p_cSeq_s cseq parameter Loading @@ -1397,8 +1373,7 @@ module LibIms_Steps } /* * /** * @desc Sets variables and default initialization for user profile and handle registration and authentication with MD5 * @param p_userprofile user profile of call * @param p_cSeq_s cseq parameter Loading @@ -1422,30 +1397,8 @@ module LibIms_Steps } /* * * @desc Sets variables and default initialization for user profile and handle registration and authentication with MD5 * @param p_userprofile user profile of call * @param p_cSeq_s cseq parameter * @param p_register register template */ function f_IMS_preamble_withEmergencyRegistration (in integer p_userprofile, in integer p_interface, inout CSeq p_cSeq_s, template REGISTER_Request p_register) runs on ImsComponent { f_init_interfaceprofile(p_interface); //Variables & defaults initialization f_IMS_preamble_woRegistration(p_userprofile, p_cSeq_s); //Preamble f_Registration(p_cSeq_s, p_register, PX_SIP_REGISTER_AUTHENTICATION_ENABLED, true); // deregistration in case of successful registration vc_DeregDone := false; } //TODO STF471 added /** * * @desc Sets variables and default initialization for user profile and handle registration and authentication with MD5 * @param p_userprofile user profile of call * @param p_cSeq_s cseq parameter Loading @@ -1465,8 +1418,7 @@ module LibIms_Steps } /* * /** * @desc Sets variables and default initialization for user profile and handle registration and authentication with MD5 * (basic registration template) * @param p_userprofile user profile of call Loading @@ -1484,8 +1436,7 @@ module LibIms_Steps f_Subscription(p_cSeq_s, m_SUBSCRIBE_Request_UE(vc_requestUri, vc_callId, p_cSeq_s, vc_from, vc_to, vc_via, vc_contact, vc_route_REG)); } /* * /** * @desc Sets variables and default initialization for user profile and handle registration and authentication with MD5 * (basic registration template) * @param p_userprofile user profile of call Loading Loading @@ -1514,8 +1465,7 @@ module LibIms_Steps group postambles { /* * /** * @desc Sets variables and default initialization for user profile and handle deregistration * @param p_cSeq_s cseq parameter */ Loading @@ -1525,8 +1475,7 @@ module LibIms_Steps f_terminate_component(); } /* * /** * @desc Sets variables and default initialization for user profile and handle deregistration on AS as TS * @param p_cSeq_s cseq parameter */ Loading Loading @@ -1627,7 +1576,6 @@ module LibIms_Steps {f_terminate_component()}; /** * * @desc sends BYE and awaits response * @param p_CallId parameter for outgoing BYE * @param p_cSeq parameter for outgoing BYE Loading Loading @@ -1659,7 +1607,6 @@ module LibIms_Steps /** * * @desc sends BYE and awaits response * @param p_CallId parameter for outgoing BYE * @param p_cSeq parameter for outgoing BYE Loading Loading @@ -1696,7 +1643,6 @@ module LibIms_Steps /** * * @desc sends BYE and awaits response and De-registration * @param p_CallId parameter for outgoing BYE * @param p_cSeq parameter for outgoing BYE Loading Loading @@ -1903,7 +1849,6 @@ module LibIms_Steps } /** * * @desc main default altstep to handle unexpected messages and timeout * @verdict fail for all unexpected branches */ Loading Loading
ttcn/LibIms_Steps.ttcn +47 −102 Original line number Diff line number Diff line Loading @@ -28,7 +28,6 @@ module LibIms_Steps group parameterOperations { /** * * @desc functions add new via parameter * @param p_message (request) SIP message to be used to prepair via header * @param p_userprofile user profile Loading Loading @@ -107,7 +106,6 @@ module LibIms_Steps } /** * * @desc functions add new recordRoute parameter * @param p_message (request) SIP message to be used to prepair via header * @param p_userprofile user profile Loading Loading @@ -136,8 +134,7 @@ module LibIms_Steps group fieldOperations { /* * /** * @desc sets BYE header fields (IMS addresses) * extension of general settings from LibSip basic function * @param p_cSeq_s current cSeq Loading @@ -158,8 +155,7 @@ module LibIms_Steps }// end f_setHeadersBYE /* * /** * @desc sets CANCEL header fields (IMS addresses) * extension of general settings from LibSip basic function * @param p_cSeq_s current cSeq Loading @@ -176,7 +172,6 @@ module LibIms_Steps }// end f_setHeadersCANCEL /** * * @desc sets headers for forward request from AS in case if AS acts as Proxy * @param p_proxyMode true = proxyMode, false = B2BMode */ Loading @@ -201,7 +196,6 @@ module LibIms_Steps }// end function f_setHeadersForwardRequest /** * * @desc sets header fields for forward request from AS in case if AS acts as Proxy */ function f_setHeadersForwardResponseFromAS (inout CSeq p_cSeq_s) runs on ImsComponent Loading @@ -219,8 +213,7 @@ module LibIms_Steps f_removeOwnViaParameter(v_response); }// end function f_setHeadersForwardResponse /* * /** * @desc sets Invite header fields (IMS addresses) * extension of general settings from LibSip basic function * @param p_cSeq_s current cSeq Loading @@ -244,8 +237,7 @@ module LibIms_Steps }// end f_setHeadersINVITE /* * /** * @desc sets Invite header fields (IMS addresses) * extension of general settings from LibSip basic function * @param p_cSeq_s current cSeq Loading @@ -269,8 +261,7 @@ module LibIms_Steps }// end f_setHeadersUPDATE /* * /** * @desc sets Message header fields (IMS addresses) * extension of general settings from LibSip basic function * @param p_cSeq_s current cSeq Loading @@ -289,8 +280,7 @@ module LibIms_Steps }// end f_setHeadersMESSAGE /* * /** * @desc sets Notify header fields (IMS addresses) * extension of general settings from LibSip basic function * @param p_cSeq_s current cSeq Loading Loading @@ -318,8 +308,7 @@ module LibIms_Steps }// end f_setHeadersNOTIFY /* * /** * @desc sets Publish header fields (IMS addresses) * extension of general settings from LibSip basic function * @param p_cSeq_s current cSeq Loading Loading @@ -353,7 +342,6 @@ module LibIms_Steps }// end f_setHeadersPUBLISH /** ** * @desc sets Subscribe header fields (IMS addresses) * extension of general settings from LibSip basic function * @param p_cSeq_s current cSeq Loading Loading @@ -437,7 +425,6 @@ module LibIms_Steps }// end function f_setHeadersReINVITE /** * * @desc sets component variables related to message header fields * when sending requests from the home I-CSCF (TS) to the visited P-CSCF (SUT) * (message type independent: CSeq, contact, via), function uses information from Loading Loading @@ -469,7 +456,6 @@ module LibIms_Steps }// end function f_setHeadersGeneral_ICSCF /** * * @desc sets header field for the next outgoing REGISTER message * from the visited P-CSCF to the home I-CSCF * @param p_cSeq_s CSeq parameter to be applied Loading Loading @@ -520,8 +506,7 @@ module LibIms_Steps /* * /** * @desc sets REFER header fields (IMS addresses) * extension of general settings from LibSip basic function * @param p_cSeq_s current cSeq Loading @@ -545,7 +530,7 @@ module LibIms_Steps }// end f_setHeadersREFER /* /** * @desc sets REFER header fields (IMS addresses) * extension of general settings from LibSip basic function * @param p_cSeq_s current cSeq Loading Loading @@ -583,8 +568,8 @@ module LibIms_Steps group awaitingMessage { } group sendMessage { /** * * @desc send PRACK message * @param p_request template of the message to be sent */ Loading Loading @@ -621,8 +606,7 @@ module LibIms_Steps } group globalSteps { /* * /** * @desc sets user parameters with PIXIT values * @param p_user identifies the selected user configuration and location * @verdict Loading Loading @@ -1037,8 +1021,7 @@ module LibIms_Steps } /* * /** * @desc sets user parameters with PIXIT values * @param p_user identifies the selected user configuration and location * @verdict Loading Loading @@ -1094,8 +1077,7 @@ module LibIms_Steps } } /* * /** * @desc retrieves user DomainPort value of the interface profile * @param p_interface identifies the selected interface * @return DomainPort template Loading @@ -1105,8 +1087,7 @@ module LibIms_Steps return {p_userProfile.homeDomain, p_userProfile.currPort} } /* * /** * @desc retrieves HostPort value of the interface profile * @param p_interface identifies the selected interface * @return HostPort template Loading @@ -1116,8 +1097,7 @@ module LibIms_Steps return {p_interface.SUTIpaddr,p_interface.SUTPort} } /* * /** * @desc retrieves DomainPort value of the interface profile * @param p_interface identifies the selected interface * @return DomainPort template Loading @@ -1127,7 +1107,7 @@ module LibIms_Steps return {p_interface.SUTHomeDomain,p_interface.SUTPort} } /* /** * @desc retrieves SipUrl of the interface profile * @param p_interface identifies the selected interface * @return SipUrl template Loading @@ -1142,7 +1122,6 @@ module LibIms_Steps group registration { /** * * @desc registration and authentication with MD5 * @param p_cSeq_s cseq parameter * @param p_auth flag indicating if authentication is needed Loading Loading @@ -1187,7 +1166,6 @@ module LibIms_Steps }//end function f_Registration_IMS /** * * @desc awaiting UE1 registration (with authentication) * @param p_cSeq_s cseq parameter */ Loading Loading @@ -1217,15 +1195,16 @@ module LibIms_Steps ); // 200OK to complete the request vc_contact := vc_request.msgHeader.contact; if (isvalue(vc_request.msgHeader.contact)) { vc_contact := valueof(vc_request.msgHeader.contact); vc_contact.contactBody.contactAddresses[0].contactParams := {{"expires",int2str(3600)}}; } v_passociated_url := vc_caller_From.addressField.nameAddr.addrSpec; f_sendResponse(m_Response_2xxonREGISTER_IMS(c_statusLine200,vc_callId, vc_cSeq,vc_callee_From, vc_callee_To, vc_via,vc_contact,f_initSipUrl(c_userProfile_SCSCFwithHomeUE),v_passociated_url)); }//end function f_awaitingRegistration_IMS /** * * @desc awaiting UE1 registration (with authentication) * @param p_cSeq_s cseq parameter */ Loading @@ -1249,8 +1228,10 @@ module LibIms_Steps //f_awaitingREGISTER(mw_REGISTER_authorizedRequest_IMS(m_Authorization_digest(mw_digestResponse((c_Integrity_protected_yes,c_Integrity_protected_ip_assoc_pending))))); // 200OK to complete the request vc_contact := vc_request.msgHeader.contact; if (isvalue(vc_request.msgHeader.contact)) { vc_contact := valueof(vc_request.msgHeader.contact); vc_contact.contactBody.contactAddresses[0].contactParams := {{"expires",int2str(3600)}}; } v_passociated_url := vc_caller_From.addressField.nameAddr.addrSpec; f_sendResponse(m_Response_2xxonREGISTER_IMS(c_statusLine200,vc_callId, vc_cSeq,vc_callee_From, vc_callee_To, vc_via,vc_contact,f_initSipUrl(c_userProfile_SCSCFwithHomeUE),v_passociated_url)); vc_DeregDone := false; Loading @@ -1258,7 +1239,6 @@ module LibIms_Steps /** * * @desc remove registration * @param p_cSeq_s cseq parameter */ Loading Loading @@ -1317,8 +1297,7 @@ module LibIms_Steps group preambles { /* * /** * @desc Sets variables and default initialization for user profile where proxy role is present * @param p_userprofile user profile of call * @param p_cSeq_s cseq parameter Loading @@ -1332,8 +1311,7 @@ module LibIms_Steps f_IMS_preamble_woRegistration(p_userprofile, p_cSeq_s); } /* * /** * @desc Sets variables and default initialization for user profile * @param p_userprofile user profile of call * @param p_cSeq_s cseq parameter Loading @@ -1356,7 +1334,6 @@ module LibIms_Steps //TODO STF471 added /** * * @desc Sets variables and default initialization for user profile * @param p_userprofile user profile of call * @param p_cSeq_s cseq parameter Loading @@ -1376,8 +1353,7 @@ module LibIms_Steps vc_sdp_local := valueof(m_SDP_bandwidth(m_media_dynPT(PX_SIP_SDP_dyn, PX_SIP_SDP_encoding), vc_userprofile)); } /* * /** * @desc Sets variables and default initialization for user profile and handle registration and authentication with MD5 * @param p_userprofile user profile of call * @param p_cSeq_s cseq parameter Loading @@ -1397,8 +1373,7 @@ module LibIms_Steps } /* * /** * @desc Sets variables and default initialization for user profile and handle registration and authentication with MD5 * @param p_userprofile user profile of call * @param p_cSeq_s cseq parameter Loading @@ -1422,30 +1397,8 @@ module LibIms_Steps } /* * * @desc Sets variables and default initialization for user profile and handle registration and authentication with MD5 * @param p_userprofile user profile of call * @param p_cSeq_s cseq parameter * @param p_register register template */ function f_IMS_preamble_withEmergencyRegistration (in integer p_userprofile, in integer p_interface, inout CSeq p_cSeq_s, template REGISTER_Request p_register) runs on ImsComponent { f_init_interfaceprofile(p_interface); //Variables & defaults initialization f_IMS_preamble_woRegistration(p_userprofile, p_cSeq_s); //Preamble f_Registration(p_cSeq_s, p_register, PX_SIP_REGISTER_AUTHENTICATION_ENABLED, true); // deregistration in case of successful registration vc_DeregDone := false; } //TODO STF471 added /** * * @desc Sets variables and default initialization for user profile and handle registration and authentication with MD5 * @param p_userprofile user profile of call * @param p_cSeq_s cseq parameter Loading @@ -1465,8 +1418,7 @@ module LibIms_Steps } /* * /** * @desc Sets variables and default initialization for user profile and handle registration and authentication with MD5 * (basic registration template) * @param p_userprofile user profile of call Loading @@ -1484,8 +1436,7 @@ module LibIms_Steps f_Subscription(p_cSeq_s, m_SUBSCRIBE_Request_UE(vc_requestUri, vc_callId, p_cSeq_s, vc_from, vc_to, vc_via, vc_contact, vc_route_REG)); } /* * /** * @desc Sets variables and default initialization for user profile and handle registration and authentication with MD5 * (basic registration template) * @param p_userprofile user profile of call Loading Loading @@ -1514,8 +1465,7 @@ module LibIms_Steps group postambles { /* * /** * @desc Sets variables and default initialization for user profile and handle deregistration * @param p_cSeq_s cseq parameter */ Loading @@ -1525,8 +1475,7 @@ module LibIms_Steps f_terminate_component(); } /* * /** * @desc Sets variables and default initialization for user profile and handle deregistration on AS as TS * @param p_cSeq_s cseq parameter */ Loading Loading @@ -1627,7 +1576,6 @@ module LibIms_Steps {f_terminate_component()}; /** * * @desc sends BYE and awaits response * @param p_CallId parameter for outgoing BYE * @param p_cSeq parameter for outgoing BYE Loading Loading @@ -1659,7 +1607,6 @@ module LibIms_Steps /** * * @desc sends BYE and awaits response * @param p_CallId parameter for outgoing BYE * @param p_cSeq parameter for outgoing BYE Loading Loading @@ -1696,7 +1643,6 @@ module LibIms_Steps /** * * @desc sends BYE and awaits response and De-registration * @param p_CallId parameter for outgoing BYE * @param p_cSeq parameter for outgoing BYE Loading Loading @@ -1903,7 +1849,6 @@ module LibIms_Steps } /** * * @desc main default altstep to handle unexpected messages and timeout * @verdict fail for all unexpected branches */ Loading