Commit 922cf558 authored by deshpande's avatar deshpande
Browse files

Added 4 ECT testcase implementations, corrected usage of some function calls

parent 88c4be27
Loading
Loading
Loading
Loading
+20 −0
Original line number Diff line number Diff line
@@ -110,6 +110,12 @@ group SimpleConstants
      // Short delta-second used in expires parameter to acknowledge a registration
      const charstring c_shortRegistration := "3600";

	  // ([RFC3891]Sec 6.1)
	  const charstring c_earlyFlag := "early-only";

	  // option tag replaces ([RFC3261])
	  const charstring c_replaces := "replaces";
      
	  // option tag 100rel (reliable provisional response [RFC3262])
	  const charstring c_tag100rel := "100rel";
      
@@ -411,6 +417,9 @@ group SubTypes{// Subtypes
		// [3515] - REFER method
		REFER_TO_E,
		
		// [3891] 
		REPLACES_E,

		// [3892] - REFER method
		REFERRED_BY_E,
		
@@ -1313,6 +1322,16 @@ group SubTypes{// Subtypes
	  }	  	  
	  }// end group RFC3841HeaderFieldTypes

	  group RFC3891HeaderFieldTypes
	  {
	  // [3891]
      type record Replaces
      {
        FieldName			fieldName (REPLACES_E),
		SemicolonParam_List replacesParams
      }
      }// end group RFC3891HeaderFieldTypes
      
	  group RFC3892HeaderFieldTypes
	  {
	  // [3892]
@@ -1447,6 +1466,7 @@ group SubTypes{// Subtypes
        RecordRoute			recordRoute optional,
		ReferredBy 			referredBy optional, // 3892 - REFER method	
		ReferTo 			referTo optional, // 3515 - REFER method
		Replaces			replaces optional, // 3891
        ReplyTo				replyTo optional, // optional in responses and INVITE requests
        Require 			require optional,
        RetryAfter			retryAfter optional, // only in responses
+68 −0
Original line number Diff line number Diff line
@@ -583,6 +583,25 @@ module LibSip_Templates
			referToParams := {{id:="method",paramValue :=p_method}}
		}

		template Replaces m_Replaces(
			charstring p_callId, 
			charstring p_toTag,
			charstring p_fromTag
		) := {
			fieldName := REPLACES_E,
			replacesParams := {
				{id := p_callId, paramValue := omit},
				{id := "to-tag", paramValue := p_toTag},
				{id := "from-tag", paramValue := p_fromTag}
			}
		}

		template Require m_Require_replaces :=
		{		  
			fieldName := REQUIRE_E,
			optionsTags := {c_replaces}
		};
		
		template Require m_Require_100rel :=
		{		  
			fieldName := REQUIRE_E,
@@ -846,6 +865,7 @@ group dummy_templates {
		recordRoute := omit,
		referredBy := omit, //*  RFC3892 - REFER method
		referTo := omit, //*  RFC3515 - REFER method
		replaces := omit, //* RFC3891
		replyTo := omit,
		require := omit,
		retryAfter := omit,
@@ -935,6 +955,7 @@ group dummy_templates {
		recordRoute := *,
		referredBy := *, //*  RFC3892 - REFER method
		referTo := *, //*  RFC3515 - REFER method
		replaces := *, //* RFC 3891
		replyTo := *,
		require := *,
		retryAfter := *,
@@ -1414,6 +1435,26 @@ group base_templates{
	  		}
		}
		
		template REFER_Request m_REFER_Request_replaces (
			SipUrl p_requestUri, 
			CallId p_callId, 
			CSeq p_cSeq, 
			Contact p_contact,
			From p_from, 
			template To p_to, 
			Via p_via, 
			template ReferTo p_referTo, 
			template ReferredBy p_referredBy,
			Replaces p_replaces,
			Require p_require
		) modifies m_REFER_Request_Base := {
			msgHeader :=
			{
				replaces := p_replaces,
				require := p_require
			}
		}
		
		template REGISTER_Request m_REGISTER_Request_Base (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq,
			From p_from, To p_to, Via p_via, Contact p_contact, template Authorization p_authorization) modifies m_REGISTER_Dummy :=
		{
@@ -1602,6 +1643,33 @@ group base_templates{
			}
		}
		
		template REFER_Request
		mw_REFER_Request(CallId p_callId, SipUrl p_requestUri,
						 SipUrl p_referredBy)
		modifies mw_REFER_Request_Base := {
			requestLine := {method := REFER_E, requestUri := p_requestUri},
			msgHeader := {
				callId := p_callId,
				referredBy := {
					fieldName := REFERRED_BY_E,
					nameAddr := {displayName := *, addrSpec := p_referredBy},
					referredbyIdParams := *
				}
			}
		}
	
		template INVITE_Request mw_INVITE_Request(Require p_require,
						 SipUrl p_referredBy) modifies mw_INVITE_Request_Base := {
			msgHeader := {
				require := p_require,
				referredBy := {
					fieldName := REFERRED_BY_E,
					nameAddr := {displayName := *, addrSpec := p_referredBy},
					referredbyIdParams := *
				}
			}
		}
		
		template REGISTER_Request mw_REGISTER_Request_Base modifies mw_REGISTER_Dummy :=
		{
			requestLine	:=