Loading ttcn3/EtsiLibrary/LibIpv6/LibMobility/LibIpv6_Rfc3775Mipv6_Functions.ttcn +27 −19 Original line number Original line Diff line number Diff line Loading @@ -139,8 +139,7 @@ module LibIpv6_Rfc3775Mipv6_Functions { //Variables //Variables var GeneralIpv6 v_generalIpv6 ; var GeneralIpv6 v_generalIpv6 ; var UInt16 v_seqNr := 0; var UInt16 v_seqNr := 0; var Ipv6Address v_mnCareOfAddr1 := c_16ZeroBytes; var UInt16 v_lifetime := 0; var Ipv6Address v_mnCareOfAddr2 := c_16ZeroBytes; var Ipv6Address v_mnHomeAddr := c_16ZeroBytes; var Ipv6Address v_mnHomeAddr := c_16ZeroBytes; var FncRetCode v_ret := e_error; var FncRetCode v_ret := e_error; var Ipv6Address v_receivedTargetAddr := c_16ZeroBytes; var Ipv6Address v_receivedTargetAddr := c_16ZeroBytes; Loading @@ -162,7 +161,7 @@ module LibIpv6_Rfc3775Mipv6_Functions { } } //1st alternative : m_optPad2 + Coa //1st alternative : m_optPad2 + Coa [] ipPort.receive(mw_generalIpv6_dst( c_dstHdr, [] ipPort.receive(mw_generalIpv6_dst( c_mipHdr, //p_mnCoaTn, //p_mnCoaTn, p_haGlaTn, p_haGlaTn, m_extHdrList_1Elem( m_extHdrList_1Elem( Loading @@ -176,29 +175,30 @@ module LibIpv6_Rfc3775Mipv6_Functions { m_mipOpt_padN(m_optPad2), m_mipOpt_padN(m_optPad2), m_mipOpt_altCoa(mw_mipOptAltCoA))))))) -> value v_generalIpv6 { m_mipOpt_altCoa(mw_mipOptAltCoA))))))) -> value v_generalIpv6 { //Get SeqNr //Get SeqNr v_seqNr := v_generalIpv6.extHdrList[1].mipHeader.mipMessage.bindingUpdate.sequenceNumber; v_seqNr := v_generalIpv6.extHdrList[0].mipHeader.mipMessage.bindingUpdate.sequenceNumber; //Get CareOfAddress //Get Lifetime v_mnCareOfAddr1 := v_generalIpv6.ipv6Hdr.sourceAddress; v_lifetime := v_generalIpv6.extHdrList[0].mipHeader.mipMessage.bindingUpdate.lifeTime; //TODO read v_mnCareOfAddr2 from MipOptions //Get HomeAddress //Get HomeAddress v_mnHomeAddr := v_generalIpv6.extHdrList[0].destinationOptionHeader.destOptionList[1].homeAddressOption.homeAddress; v_mnHomeAddr := v_generalIpv6.ipv6Hdr.sourceAddress; //TODO read v_mnCareOfAddr2 from MipOptions //tc_wait.stop; //tc_wait.stop; v_ret := e_success ; v_ret := e_success ; v_ret := f_sendGeneralIpv6(m_generalIpv6_srcDst( c_routeHdr, v_ret := f_sendGeneralIpv6(m_generalIpv6_srcDst( c_mipHdr, p_haGlaTn, p_haGlaTn, v_mnCareOfAddr1, v_mnHomeAddr, m_extHdrList_1Elem( m_extHdrList_1Elem( m_extHdr_mipHeader ( m_extHdr_mipHeader ( c_noNextHdr, c_noNextHdr, c_bindingAck, c_bindingAck, m_bindingAck( m_bindingAck( v_seqNr, v_seqNr, v_lifetime, m_mipOptList_1Elem( m_mipOptList_1Elem( m_mipOpt_padN(m_optPad4))))))); m_mipOpt_padN(m_optPad4))))))); repeat; repeat; } } //2nd alternative : m_optPad4 //2nd alternative : m_optPad4 [] ipPort.receive(mw_generalIpv6_dst( c_dstHdr, [] ipPort.receive(mw_generalIpv6_dst( c_mipHdr, //p_mnCoaTn, //p_mnCoaTn, p_haGlaTn, p_haGlaTn, m_extHdrList_1Elem( m_extHdrList_1Elem( Loading @@ -211,22 +211,23 @@ module LibIpv6_Rfc3775Mipv6_Functions { m_mipOptList_1Elem( m_mipOptList_1Elem( m_mipOpt_padN(m_optPad4))))))) -> value v_generalIpv6 { m_mipOpt_padN(m_optPad4))))))) -> value v_generalIpv6 { //Get SeqNr //Get SeqNr v_seqNr := v_generalIpv6.extHdrList[1].mipHeader.mipMessage.bindingUpdate.sequenceNumber; v_seqNr := v_generalIpv6.extHdrList[0].mipHeader.mipMessage.bindingUpdate.sequenceNumber; //Get CareOfAddress //Get Lifetime v_mnCareOfAddr1 := v_generalIpv6.ipv6Hdr.sourceAddress; v_lifetime := v_generalIpv6.extHdrList[0].mipHeader.mipMessage.bindingUpdate.lifeTime; //Get HomeAddress //Get HomeAddress v_mnHomeAddr := v_generalIpv6.extHdrList[0].destinationOptionHeader.destOptionList[1].homeAddressOption.homeAddress; v_mnHomeAddr := v_generalIpv6.ipv6Hdr.sourceAddress; //tc_wait.stop; //tc_wait.stop; v_ret := e_success ; v_ret := e_success ; v_ret := f_sendGeneralIpv6(m_generalIpv6_srcDst( c_routeHdr, v_ret := f_sendGeneralIpv6(m_generalIpv6_srcDst( c_mipHdr, p_haGlaTn, p_haGlaTn, v_mnCareOfAddr1, v_mnHomeAddr, m_extHdrList_1Elem( m_extHdrList_1Elem( m_extHdr_mipHeader ( m_extHdr_mipHeader ( c_noNextHdr, c_noNextHdr, c_bindingAck, c_bindingAck, m_bindingAck( m_bindingAck( v_seqNr, v_seqNr, v_lifetime, m_mipOptList_1Elem( m_mipOptList_1Elem( m_mipOpt_padN(m_optPad4))))))); m_mipOpt_padN(m_optPad4))))))); repeat; repeat; Loading @@ -252,6 +253,7 @@ module LibIpv6_Rfc3775Mipv6_Functions { //Variables //Variables var GeneralIpv6 v_generalIpv6 ; var GeneralIpv6 v_generalIpv6 ; var UInt16 v_seqNr := 0; var UInt16 v_seqNr := 0; var UInt16 v_lifetime := 0; var Ipv6Address v_mnCareOfAddr1 := c_16ZeroBytes; var Ipv6Address v_mnCareOfAddr1 := c_16ZeroBytes; var Ipv6Address v_mnCareOfAddr2 := c_16ZeroBytes; var Ipv6Address v_mnCareOfAddr2 := c_16ZeroBytes; var Ipv6Address v_mnHomeAddr := c_16ZeroBytes; var Ipv6Address v_mnHomeAddr := c_16ZeroBytes; Loading Loading @@ -295,6 +297,8 @@ module LibIpv6_Rfc3775Mipv6_Functions { m_mipOpt_altCoa(mw_mipOptAltCoA))))))) -> value v_generalIpv6 { m_mipOpt_altCoa(mw_mipOptAltCoA))))))) -> value v_generalIpv6 { //Get SeqNr //Get SeqNr v_seqNr := v_generalIpv6.extHdrList[1].mipHeader.mipMessage.bindingUpdate.sequenceNumber; v_seqNr := v_generalIpv6.extHdrList[1].mipHeader.mipMessage.bindingUpdate.sequenceNumber; //Get Lifetime v_lifetime := v_generalIpv6.extHdrList[1].mipHeader.mipMessage.bindingUpdate.lifeTime; //Get CareOfAddress //Get CareOfAddress v_mnCareOfAddr1 := v_generalIpv6.ipv6Hdr.sourceAddress; v_mnCareOfAddr1 := v_generalIpv6.ipv6Hdr.sourceAddress; //TODO read v_mnCareOfAddr2 from MipOptions //TODO read v_mnCareOfAddr2 from MipOptions Loading @@ -317,6 +321,7 @@ module LibIpv6_Rfc3775Mipv6_Functions { c_bindingAck, c_bindingAck, m_bindingAck( m_bindingAck( v_seqNr, v_seqNr, v_lifetime, m_mipOptList_1Elem( m_mipOptList_1Elem( m_mipOpt_padN(m_optPad4))))))); m_mipOpt_padN(m_optPad4))))))); repeat; repeat; Loading @@ -341,6 +346,8 @@ module LibIpv6_Rfc3775Mipv6_Functions { m_mipOpt_padN(m_optPad4))))))) -> value v_generalIpv6 { m_mipOpt_padN(m_optPad4))))))) -> value v_generalIpv6 { //Get SeqNr //Get SeqNr v_seqNr := v_generalIpv6.extHdrList[1].mipHeader.mipMessage.bindingUpdate.sequenceNumber; v_seqNr := v_generalIpv6.extHdrList[1].mipHeader.mipMessage.bindingUpdate.sequenceNumber; //Get Lifetime v_lifetime := v_generalIpv6.extHdrList[1].mipHeader.mipMessage.bindingUpdate.lifeTime; //Get CareOfAddress //Get CareOfAddress v_mnCareOfAddr1 := v_generalIpv6.ipv6Hdr.sourceAddress; v_mnCareOfAddr1 := v_generalIpv6.ipv6Hdr.sourceAddress; //GetHomeAddress //GetHomeAddress Loading @@ -362,6 +369,7 @@ module LibIpv6_Rfc3775Mipv6_Functions { c_bindingAck, c_bindingAck, m_bindingAck( m_bindingAck( v_seqNr, v_seqNr, v_lifetime, m_mipOptList_1Elem( m_mipOptList_1Elem( m_mipOpt_padN(m_optPad4))))))); m_mipOpt_padN(m_optPad4))))))); repeat; repeat; Loading ttcn3/EtsiLibrary/LibIpv6/LibMultiRfcs/LibIpv6_MultiRfcs_Templates.ttcn +2 −2 Original line number Original line Diff line number Diff line Loading @@ -219,13 +219,13 @@ module LibIpv6_MultiRfcs_Templates { } } } } template MipMessage m_bindingAck(UInt16 p_seqNr, template MipOptionList p_mipOptions) := { template MipMessage m_bindingAck(UInt16 p_seqNr, UInt16 p_lifetime, template MipOptionList p_mipOptions) := { bindingAck := { bindingAck := { status := c_mipCodeBindingUpdateAccepted, status := c_mipCodeBindingUpdateAccepted, kFlag := c_kFlag0, kFlag := c_kFlag0, reserved := c_uInt7Zero, reserved := c_uInt7Zero, sequenceNumber := p_seqNr, sequenceNumber := p_seqNr, lifeTime := c_100TimeUnits, lifeTime := p_lifetime, mipOptions := p_mipOptions mipOptions := p_mipOptions } } } } Loading Loading
ttcn3/EtsiLibrary/LibIpv6/LibMobility/LibIpv6_Rfc3775Mipv6_Functions.ttcn +27 −19 Original line number Original line Diff line number Diff line Loading @@ -139,8 +139,7 @@ module LibIpv6_Rfc3775Mipv6_Functions { //Variables //Variables var GeneralIpv6 v_generalIpv6 ; var GeneralIpv6 v_generalIpv6 ; var UInt16 v_seqNr := 0; var UInt16 v_seqNr := 0; var Ipv6Address v_mnCareOfAddr1 := c_16ZeroBytes; var UInt16 v_lifetime := 0; var Ipv6Address v_mnCareOfAddr2 := c_16ZeroBytes; var Ipv6Address v_mnHomeAddr := c_16ZeroBytes; var Ipv6Address v_mnHomeAddr := c_16ZeroBytes; var FncRetCode v_ret := e_error; var FncRetCode v_ret := e_error; var Ipv6Address v_receivedTargetAddr := c_16ZeroBytes; var Ipv6Address v_receivedTargetAddr := c_16ZeroBytes; Loading @@ -162,7 +161,7 @@ module LibIpv6_Rfc3775Mipv6_Functions { } } //1st alternative : m_optPad2 + Coa //1st alternative : m_optPad2 + Coa [] ipPort.receive(mw_generalIpv6_dst( c_dstHdr, [] ipPort.receive(mw_generalIpv6_dst( c_mipHdr, //p_mnCoaTn, //p_mnCoaTn, p_haGlaTn, p_haGlaTn, m_extHdrList_1Elem( m_extHdrList_1Elem( Loading @@ -176,29 +175,30 @@ module LibIpv6_Rfc3775Mipv6_Functions { m_mipOpt_padN(m_optPad2), m_mipOpt_padN(m_optPad2), m_mipOpt_altCoa(mw_mipOptAltCoA))))))) -> value v_generalIpv6 { m_mipOpt_altCoa(mw_mipOptAltCoA))))))) -> value v_generalIpv6 { //Get SeqNr //Get SeqNr v_seqNr := v_generalIpv6.extHdrList[1].mipHeader.mipMessage.bindingUpdate.sequenceNumber; v_seqNr := v_generalIpv6.extHdrList[0].mipHeader.mipMessage.bindingUpdate.sequenceNumber; //Get CareOfAddress //Get Lifetime v_mnCareOfAddr1 := v_generalIpv6.ipv6Hdr.sourceAddress; v_lifetime := v_generalIpv6.extHdrList[0].mipHeader.mipMessage.bindingUpdate.lifeTime; //TODO read v_mnCareOfAddr2 from MipOptions //Get HomeAddress //Get HomeAddress v_mnHomeAddr := v_generalIpv6.extHdrList[0].destinationOptionHeader.destOptionList[1].homeAddressOption.homeAddress; v_mnHomeAddr := v_generalIpv6.ipv6Hdr.sourceAddress; //TODO read v_mnCareOfAddr2 from MipOptions //tc_wait.stop; //tc_wait.stop; v_ret := e_success ; v_ret := e_success ; v_ret := f_sendGeneralIpv6(m_generalIpv6_srcDst( c_routeHdr, v_ret := f_sendGeneralIpv6(m_generalIpv6_srcDst( c_mipHdr, p_haGlaTn, p_haGlaTn, v_mnCareOfAddr1, v_mnHomeAddr, m_extHdrList_1Elem( m_extHdrList_1Elem( m_extHdr_mipHeader ( m_extHdr_mipHeader ( c_noNextHdr, c_noNextHdr, c_bindingAck, c_bindingAck, m_bindingAck( m_bindingAck( v_seqNr, v_seqNr, v_lifetime, m_mipOptList_1Elem( m_mipOptList_1Elem( m_mipOpt_padN(m_optPad4))))))); m_mipOpt_padN(m_optPad4))))))); repeat; repeat; } } //2nd alternative : m_optPad4 //2nd alternative : m_optPad4 [] ipPort.receive(mw_generalIpv6_dst( c_dstHdr, [] ipPort.receive(mw_generalIpv6_dst( c_mipHdr, //p_mnCoaTn, //p_mnCoaTn, p_haGlaTn, p_haGlaTn, m_extHdrList_1Elem( m_extHdrList_1Elem( Loading @@ -211,22 +211,23 @@ module LibIpv6_Rfc3775Mipv6_Functions { m_mipOptList_1Elem( m_mipOptList_1Elem( m_mipOpt_padN(m_optPad4))))))) -> value v_generalIpv6 { m_mipOpt_padN(m_optPad4))))))) -> value v_generalIpv6 { //Get SeqNr //Get SeqNr v_seqNr := v_generalIpv6.extHdrList[1].mipHeader.mipMessage.bindingUpdate.sequenceNumber; v_seqNr := v_generalIpv6.extHdrList[0].mipHeader.mipMessage.bindingUpdate.sequenceNumber; //Get CareOfAddress //Get Lifetime v_mnCareOfAddr1 := v_generalIpv6.ipv6Hdr.sourceAddress; v_lifetime := v_generalIpv6.extHdrList[0].mipHeader.mipMessage.bindingUpdate.lifeTime; //Get HomeAddress //Get HomeAddress v_mnHomeAddr := v_generalIpv6.extHdrList[0].destinationOptionHeader.destOptionList[1].homeAddressOption.homeAddress; v_mnHomeAddr := v_generalIpv6.ipv6Hdr.sourceAddress; //tc_wait.stop; //tc_wait.stop; v_ret := e_success ; v_ret := e_success ; v_ret := f_sendGeneralIpv6(m_generalIpv6_srcDst( c_routeHdr, v_ret := f_sendGeneralIpv6(m_generalIpv6_srcDst( c_mipHdr, p_haGlaTn, p_haGlaTn, v_mnCareOfAddr1, v_mnHomeAddr, m_extHdrList_1Elem( m_extHdrList_1Elem( m_extHdr_mipHeader ( m_extHdr_mipHeader ( c_noNextHdr, c_noNextHdr, c_bindingAck, c_bindingAck, m_bindingAck( m_bindingAck( v_seqNr, v_seqNr, v_lifetime, m_mipOptList_1Elem( m_mipOptList_1Elem( m_mipOpt_padN(m_optPad4))))))); m_mipOpt_padN(m_optPad4))))))); repeat; repeat; Loading @@ -252,6 +253,7 @@ module LibIpv6_Rfc3775Mipv6_Functions { //Variables //Variables var GeneralIpv6 v_generalIpv6 ; var GeneralIpv6 v_generalIpv6 ; var UInt16 v_seqNr := 0; var UInt16 v_seqNr := 0; var UInt16 v_lifetime := 0; var Ipv6Address v_mnCareOfAddr1 := c_16ZeroBytes; var Ipv6Address v_mnCareOfAddr1 := c_16ZeroBytes; var Ipv6Address v_mnCareOfAddr2 := c_16ZeroBytes; var Ipv6Address v_mnCareOfAddr2 := c_16ZeroBytes; var Ipv6Address v_mnHomeAddr := c_16ZeroBytes; var Ipv6Address v_mnHomeAddr := c_16ZeroBytes; Loading Loading @@ -295,6 +297,8 @@ module LibIpv6_Rfc3775Mipv6_Functions { m_mipOpt_altCoa(mw_mipOptAltCoA))))))) -> value v_generalIpv6 { m_mipOpt_altCoa(mw_mipOptAltCoA))))))) -> value v_generalIpv6 { //Get SeqNr //Get SeqNr v_seqNr := v_generalIpv6.extHdrList[1].mipHeader.mipMessage.bindingUpdate.sequenceNumber; v_seqNr := v_generalIpv6.extHdrList[1].mipHeader.mipMessage.bindingUpdate.sequenceNumber; //Get Lifetime v_lifetime := v_generalIpv6.extHdrList[1].mipHeader.mipMessage.bindingUpdate.lifeTime; //Get CareOfAddress //Get CareOfAddress v_mnCareOfAddr1 := v_generalIpv6.ipv6Hdr.sourceAddress; v_mnCareOfAddr1 := v_generalIpv6.ipv6Hdr.sourceAddress; //TODO read v_mnCareOfAddr2 from MipOptions //TODO read v_mnCareOfAddr2 from MipOptions Loading @@ -317,6 +321,7 @@ module LibIpv6_Rfc3775Mipv6_Functions { c_bindingAck, c_bindingAck, m_bindingAck( m_bindingAck( v_seqNr, v_seqNr, v_lifetime, m_mipOptList_1Elem( m_mipOptList_1Elem( m_mipOpt_padN(m_optPad4))))))); m_mipOpt_padN(m_optPad4))))))); repeat; repeat; Loading @@ -341,6 +346,8 @@ module LibIpv6_Rfc3775Mipv6_Functions { m_mipOpt_padN(m_optPad4))))))) -> value v_generalIpv6 { m_mipOpt_padN(m_optPad4))))))) -> value v_generalIpv6 { //Get SeqNr //Get SeqNr v_seqNr := v_generalIpv6.extHdrList[1].mipHeader.mipMessage.bindingUpdate.sequenceNumber; v_seqNr := v_generalIpv6.extHdrList[1].mipHeader.mipMessage.bindingUpdate.sequenceNumber; //Get Lifetime v_lifetime := v_generalIpv6.extHdrList[1].mipHeader.mipMessage.bindingUpdate.lifeTime; //Get CareOfAddress //Get CareOfAddress v_mnCareOfAddr1 := v_generalIpv6.ipv6Hdr.sourceAddress; v_mnCareOfAddr1 := v_generalIpv6.ipv6Hdr.sourceAddress; //GetHomeAddress //GetHomeAddress Loading @@ -362,6 +369,7 @@ module LibIpv6_Rfc3775Mipv6_Functions { c_bindingAck, c_bindingAck, m_bindingAck( m_bindingAck( v_seqNr, v_seqNr, v_lifetime, m_mipOptList_1Elem( m_mipOptList_1Elem( m_mipOpt_padN(m_optPad4))))))); m_mipOpt_padN(m_optPad4))))))); repeat; repeat; Loading
ttcn3/EtsiLibrary/LibIpv6/LibMultiRfcs/LibIpv6_MultiRfcs_Templates.ttcn +2 −2 Original line number Original line Diff line number Diff line Loading @@ -219,13 +219,13 @@ module LibIpv6_MultiRfcs_Templates { } } } } template MipMessage m_bindingAck(UInt16 p_seqNr, template MipOptionList p_mipOptions) := { template MipMessage m_bindingAck(UInt16 p_seqNr, UInt16 p_lifetime, template MipOptionList p_mipOptions) := { bindingAck := { bindingAck := { status := c_mipCodeBindingUpdateAccepted, status := c_mipCodeBindingUpdateAccepted, kFlag := c_kFlag0, kFlag := c_kFlag0, reserved := c_uInt7Zero, reserved := c_uInt7Zero, sequenceNumber := p_seqNr, sequenceNumber := p_seqNr, lifeTime := c_100TimeUnits, lifeTime := p_lifetime, mipOptions := p_mipOptions mipOptions := p_mipOptions } } } } Loading