Commit e58503af authored by seb's avatar seb
Browse files

Cleanup of function names atHome offHome

parent 553d17ef
Loading
Loading
Loading
Loading
+5 −113
Original line number Diff line number Diff line
@@ -379,114 +379,6 @@ module LibIpv6_Rfc3775Mipv6_Functions {
		

		
		/*
		 * @desc  primaryCareOfAddressRegistration
		 * @param p_mnCoaTn Mobile Node Care Of Address of test node
		 * @param p_mnHoaTn Mobile Node Home Address of test node
		 * @param p_haGlaNut Home Agent Address of node under test
		*/
		function f_receiveBindingUpdateAndReplyOffHome(in template Ipv6Address p_haGlaTn, in UInt16 p_lifeTime)
		runs on Ipv6Node
		return FncRetCode {
			//Variables
			var GeneralIpv6 v_generalIpv6 ;
			var UInt16 v_seqNr := 0;
			var Ipv6Address v_mnCareOfAddr1 := c_16ZeroBytes;
			var Ipv6Address v_mnCareOfAddr2 := c_16ZeroBytes;
			var Ipv6Address v_mnHomeAddr := c_16ZeroBytes;
			var FncRetCode v_ret := e_error;
	
			tc_wait.start;
			alt {
			//1st alternative : m_optPad2 + Coa
			[]	ipPort.receive(mw_generalIpv6_dst(	c_dstHdr,
														//p_mnCoaTn,
														p_haGlaTn,
														m_extHdrList_2Elem(
															m_extHdr_dstOptHeader(	c_mipHdr,
																					c_optLen2,
																					m_dstOptList_2Elem(
																						m_dstOpt_padN(m_optPad4),
																						mw_dstOpt_homeAddr)),
															mw_extHdr_mipHeader (c_noNextHdr,
																				c_bindingUpdate,
																				mw_bindingUpdate_lifeTime(c_aFlag1,
																								c_hFlag1,
																								c_lFlag0,
																								c_kFlag0,
																								p_lifeTime,
																								m_mipOptList_2Elem(
																									m_mipOpt_padN(m_optPad2),
																									m_mipOpt_altCoa(mw_mipOptAltCoA))))))) -> value v_generalIpv6 {
					//Get SeqNr
					v_seqNr := v_generalIpv6.extHdrList[1].mipHeader.mipMessage.bindingUpdate.sequenceNumber;
					//Get CareOfAddress
					v_mnCareOfAddr1 := v_generalIpv6.ipv6Hdr.sourceAddress;
					//TODO read v_mnCareOfAddr2 from MipOptions
					//GetHomeAddress
					v_mnHomeAddr := v_generalIpv6.extHdrList[0].destinationOptionHeader.destOptionList[1].homeAddressOption.homeAddress;
					tc_wait.stop;	
					v_ret := e_success ;																							
				}
			//2nd alternative : m_optPad4
			[]	ipPort.receive(mw_generalIpv6_dst(	c_dstHdr,
														//p_mnCoaTn,
														p_haGlaTn,
														m_extHdrList_2Elem(
															m_extHdr_dstOptHeader(	c_mipHdr,
																					c_optLen2,
																					m_dstOptList_2Elem(
																						m_dstOpt_padN(m_optPad4),
																						mw_dstOpt_homeAddr)),
															mw_extHdr_mipHeader (c_noNextHdr,
																				c_bindingUpdate,
																				mw_bindingUpdate(c_aFlag1,
																								c_hFlag1,
																								c_lFlag0,
																								c_kFlag0,
																								m_mipOptList_1Elem(
																									m_mipOpt_padN(m_optPad4))))))) -> value v_generalIpv6 {
					//Get SeqNr
					v_seqNr := v_generalIpv6.extHdrList[1].mipHeader.mipMessage.bindingUpdate.sequenceNumber;
					//Get CareOfAddress
					v_mnCareOfAddr1 := v_generalIpv6.ipv6Hdr.sourceAddress;
					//GetHomeAddress
					v_mnHomeAddr := v_generalIpv6.extHdrList[0].destinationOptionHeader.destOptionList[1].homeAddressOption.homeAddress;
					tc_wait.stop;	
					v_ret := e_success ;
				}
			[]	tc_wait.timeout{
					v_ret :=  e_timeout;
					log("**** f_receiveBindingUpdateAndReply: ERROR: tc_ac.timeout **** ");
				}		
			} // end alt
			
			if (v_ret == e_success) {
				v_ret := f_sendGeneralIpv6(m_generalIpv6_srcDst(	c_routeHdr,
																	p_haGlaTn,
																	v_mnCareOfAddr1,
																	m_extHdrList_2Elem(
																		m_extHdr_routingHeader(
																			c_mipHdr,
																			c_routeHdrLen2,
																			c_routeHdrType2,
																			c_routeHdrSegmentsLeft1,
																			m_routingHeaderData_homeAddress(v_mnHomeAddr)),
																		m_extHdr_mipHeader (
																			c_noNextHdr,
																			c_bindingAck,
																			m_bindingAck(
																				v_seqNr,
																				m_mipOptList_1Elem(
																					m_mipOpt_padN(m_optPad4)))))));
	
	

			}

			return v_ret;

		}//end f_receiveBindingUpdateAndReply
		
		/*
		 * @desc  primaryCareOfAddressRegistration
@@ -547,7 +439,7 @@ module LibIpv6_Rfc3775Mipv6_Functions {
		 * @param p_mnHoaTn Mobile Node Home Address of test node
		 * @param p_haGlaNut Home Agent Address of node under test
		*/
		function f_sendBindUpAndWaitForBindAck(	in template Ipv6Address p_mnCoaTn,
		function f_sendBindUpAndWaitForBindAckOffHome(	in template Ipv6Address p_mnCoaTn,
														in template Ipv6Address p_mnHoaTn,
														in template Ipv6Address p_haGlaNut,
														in UInt16 p_seqNr,
@@ -602,7 +494,7 @@ module LibIpv6_Rfc3775Mipv6_Functions {

			return v_ret;

		}//end f_sendBindUpAndWaitForBindAck
		}//end f_sendBindUpAndWaitForBindAckOffHome

		/*
		 * @desc  primaryCareOfAddressRegistration
@@ -1024,7 +916,7 @@ module LibIpv6_Rfc3775Mipv6_Functions {

		if (v_ret == e_success) {
			//TODO align param Order with other fns
			v_ret := f_sendBindUpAndWaitForBindAck(	p_mnCoaTn,
			v_ret := f_sendBindUpAndWaitForBindAckOffHome(	p_mnCoaTn,
													p_mnHoaTn,
													v_haGlasNut[0],
													c_defSeqNo,
@@ -1056,7 +948,7 @@ module LibIpv6_Rfc3775Mipv6_Functions {
													v_haGlasNut);

		if(v_ret == e_success) {
			f_sendBindUpAndWaitForBindAck(	p_mnCoaTn,
			f_sendBindUpAndWaitForBindAckOffHome(	p_mnCoaTn,
											p_mnHoaTn,
											v_haGlasNut[0],
											c_defSeqNo,