Loading ttcn/AtsDSlite/AtsDSLite_Templates.ttcn3 +5 −7 Original line number Diff line number Diff line Loading @@ -11,9 +11,7 @@ module AtsDSLite_Templates { }; // LibIPv6 import from LibIpv6_Interface_TypesAndValues { type Ipv6Packet, ExtensionHeaderList }; import from LibIpv6_Interface_TypesAndValues all; import from LibIpv6_CommonRfcs_TypesAndValues { type Ipv6Address }; Loading Loading @@ -106,16 +104,16 @@ module AtsDSLite_Templates { * * */ template (present) Ipv6Packet mdw_generalIpv6_extHdr_dst_ipv6Payload( template (present) Ipv6Packet mdw_generalIpv6_extHdr_dst_ipv4Payload( in UInt8 p_nextHeader, in template (present) Ipv6Address p_dst, in template (present) ExtensionHeaderList p_extHdrList, in template (present) octetstring p_ipv6Payload in template (present) Ipv4Packet p_ipv4Payload ) modifies mw_generalIpv6_extHdr_dst := { ipv6Payload := { octetstringMsg := p_ipv6Payload ipv4Packet := p_ipv4Payload } } // End of template mdw_generalIpv6_extHdr_dst_ipv6Payload } // End of template mdw_generalIpv6_extHdr_dst_ipv4Payload } // End of group dhcpv6RecvMessages Loading ttcn/AtsDSlite/AtsDSLite_TestCases.ttcn3 +9 −12 Original line number Diff line number Diff line Loading @@ -654,22 +654,19 @@ module AtsDSLite_TestCases { tc_ac.start; alt { [] aftrPort.receive( mdw_generalIpv6_extHdr_dst_ipv6Payload( c_ipip, mdw_generalIpv6_extHdr_dst_ipv4Payload( c_tunneledIpHdr, PX_AFTR_GW_ADDRESS, // containing destination address indicating IPv6 AFTR GW address ?, ? // containing unchanged IPv4 packet )) -> value v_ipv6Packet { tc_ac.stop; for (v_host := 0; v_host < v_hostNum; v_host := v_host + 1) { var template (value) Ipv4Packet v_ipv4Packet; if (decvalue(oct2bit(v_ipv6Packet.ipv6Payload.octetstringMsg), v_ipv4Packet) == 0) { if (match(v_ipv4Packet, p_hostAftrDataMsgs[v_host].payload.ipv4Packet) == true) { if (match(v_ipv6Packet.ipv6Payload.ipv4Packet, p_hostAftrDataMsgs[v_host].payload.ipv4Packet) == true) { log("*** " & __SCOPE__ & ": INFO: Receives encapsulated IPv4 packet #", v_host, ". ***"); v_results[v_host] := true; break; } } } // End of 'for' statement if (lengthof(v_results) == v_hostNum) { // Check current result log("*** " & __SCOPE__ & ": PASS: All encapsulated IPv4 packets were forwarded. ***"); Loading Loading @@ -1025,7 +1022,7 @@ module AtsDSLite_TestCases { ); v_hostAftrDataMsgs[v_host].hostId := v_host; v_hostAftrDataMsgs[v_host].payload.ipv6Packet := m_generalIpv6_extHdr_data( c_ipip, c_tunneledIpHdr, PX_AFTR_B4_ADDRESS, // containing source address indicating B4 IPv6 address PX_AFTR_GW_ADDRESS, // containing destination address indicating IUT GW IPv6 address omit, // No extended header Loading Loading @@ -1221,7 +1218,7 @@ module AtsDSLite_TestCases { ); v_hostAftrDataMsgs[v_host].hostId := v_host; v_hostAftrDataMsgs[v_host].payload.ipv6Packet := m_generalIpv6_extHdr_data( c_ipip, c_tunneledIpHdr, PX_AFTR_B4_ADDRESS, // containing source address indicating B4 IPv6 address PX_AFTR_GW_ADDRESS, // containing destination address indicating IUT GW IPv6 address omit, // No extended header Loading ttcn/AtsDSlite/AtsDSLite_TypeAndValues.ttcn3 +1 −28 Original line number Diff line number Diff line /* * @author STF 440 * @version $Id$ * @desc This module defines the ATS interface * @desc This module defines the ATS types and values */ module AtsDSLite_TypesAndValues { Loading Loading @@ -48,33 +48,6 @@ module AtsDSLite_TypesAndValues { } // End of group ipv4Hosts group ipv6Hosts { /** * @desc Description of an IPv4 host service * @member srcAddress * @member srcPort * @member dstAddress * @member dstPort * @member payload * @see TC_DSLITE_AFTR_BF_BV_001 */ type record HostV6Description { Ipv4Address srcAddress, UInt16 srcPort, Ipv4Address dstAddress, UInt16 dstPort, TcpPayload payload } // End of type HostV4Description /** * @desc Defines a list of IPv4 host services * @see TC_DSLITE_AFTR_BF_BV_001 */ type set of HostV6Description HostV6Descriptions; } // End of group ipv6Hosts /** * @desc List of boolean flags to indicate if the IPv4 packet was forwarded to the AFTR * @see TC_DSLITE_B4_BF_BV_001, TC_DSLITE_AFTR_BF_BV_001 Loading Loading
ttcn/AtsDSlite/AtsDSLite_Templates.ttcn3 +5 −7 Original line number Diff line number Diff line Loading @@ -11,9 +11,7 @@ module AtsDSLite_Templates { }; // LibIPv6 import from LibIpv6_Interface_TypesAndValues { type Ipv6Packet, ExtensionHeaderList }; import from LibIpv6_Interface_TypesAndValues all; import from LibIpv6_CommonRfcs_TypesAndValues { type Ipv6Address }; Loading Loading @@ -106,16 +104,16 @@ module AtsDSLite_Templates { * * */ template (present) Ipv6Packet mdw_generalIpv6_extHdr_dst_ipv6Payload( template (present) Ipv6Packet mdw_generalIpv6_extHdr_dst_ipv4Payload( in UInt8 p_nextHeader, in template (present) Ipv6Address p_dst, in template (present) ExtensionHeaderList p_extHdrList, in template (present) octetstring p_ipv6Payload in template (present) Ipv4Packet p_ipv4Payload ) modifies mw_generalIpv6_extHdr_dst := { ipv6Payload := { octetstringMsg := p_ipv6Payload ipv4Packet := p_ipv4Payload } } // End of template mdw_generalIpv6_extHdr_dst_ipv6Payload } // End of template mdw_generalIpv6_extHdr_dst_ipv4Payload } // End of group dhcpv6RecvMessages Loading
ttcn/AtsDSlite/AtsDSLite_TestCases.ttcn3 +9 −12 Original line number Diff line number Diff line Loading @@ -654,22 +654,19 @@ module AtsDSLite_TestCases { tc_ac.start; alt { [] aftrPort.receive( mdw_generalIpv6_extHdr_dst_ipv6Payload( c_ipip, mdw_generalIpv6_extHdr_dst_ipv4Payload( c_tunneledIpHdr, PX_AFTR_GW_ADDRESS, // containing destination address indicating IPv6 AFTR GW address ?, ? // containing unchanged IPv4 packet )) -> value v_ipv6Packet { tc_ac.stop; for (v_host := 0; v_host < v_hostNum; v_host := v_host + 1) { var template (value) Ipv4Packet v_ipv4Packet; if (decvalue(oct2bit(v_ipv6Packet.ipv6Payload.octetstringMsg), v_ipv4Packet) == 0) { if (match(v_ipv4Packet, p_hostAftrDataMsgs[v_host].payload.ipv4Packet) == true) { if (match(v_ipv6Packet.ipv6Payload.ipv4Packet, p_hostAftrDataMsgs[v_host].payload.ipv4Packet) == true) { log("*** " & __SCOPE__ & ": INFO: Receives encapsulated IPv4 packet #", v_host, ". ***"); v_results[v_host] := true; break; } } } // End of 'for' statement if (lengthof(v_results) == v_hostNum) { // Check current result log("*** " & __SCOPE__ & ": PASS: All encapsulated IPv4 packets were forwarded. ***"); Loading Loading @@ -1025,7 +1022,7 @@ module AtsDSLite_TestCases { ); v_hostAftrDataMsgs[v_host].hostId := v_host; v_hostAftrDataMsgs[v_host].payload.ipv6Packet := m_generalIpv6_extHdr_data( c_ipip, c_tunneledIpHdr, PX_AFTR_B4_ADDRESS, // containing source address indicating B4 IPv6 address PX_AFTR_GW_ADDRESS, // containing destination address indicating IUT GW IPv6 address omit, // No extended header Loading Loading @@ -1221,7 +1218,7 @@ module AtsDSLite_TestCases { ); v_hostAftrDataMsgs[v_host].hostId := v_host; v_hostAftrDataMsgs[v_host].payload.ipv6Packet := m_generalIpv6_extHdr_data( c_ipip, c_tunneledIpHdr, PX_AFTR_B4_ADDRESS, // containing source address indicating B4 IPv6 address PX_AFTR_GW_ADDRESS, // containing destination address indicating IUT GW IPv6 address omit, // No extended header Loading
ttcn/AtsDSlite/AtsDSLite_TypeAndValues.ttcn3 +1 −28 Original line number Diff line number Diff line /* * @author STF 440 * @version $Id$ * @desc This module defines the ATS interface * @desc This module defines the ATS types and values */ module AtsDSLite_TypesAndValues { Loading Loading @@ -48,33 +48,6 @@ module AtsDSLite_TypesAndValues { } // End of group ipv4Hosts group ipv6Hosts { /** * @desc Description of an IPv4 host service * @member srcAddress * @member srcPort * @member dstAddress * @member dstPort * @member payload * @see TC_DSLITE_AFTR_BF_BV_001 */ type record HostV6Description { Ipv4Address srcAddress, UInt16 srcPort, Ipv4Address dstAddress, UInt16 dstPort, TcpPayload payload } // End of type HostV4Description /** * @desc Defines a list of IPv4 host services * @see TC_DSLITE_AFTR_BF_BV_001 */ type set of HostV6Description HostV6Descriptions; } // End of group ipv6Hosts /** * @desc List of boolean flags to indicate if the IPv4 packet was forwarded to the AFTR * @see TC_DSLITE_B4_BF_BV_001, TC_DSLITE_AFTR_BF_BV_001 Loading