Loading ttcn3/EtsiLibrary/LibIpv6/LibCommonRfcs/LibIpv6_Interface_Functions.ttcn +2 −2 Original line number Original line Diff line number Diff line Loading @@ -1185,7 +1185,7 @@ group rfc4303Esp_ExtHdrFunctions { }//end group rfc4303Esp_ExtHdrFunctions }//end group rfc4303Esp_ExtHdrFunctions group rfc791Fns { group rfc791RootFns { /* /* * @desc This sends an ICMPv4 packet from an dual stack IPv4/IPv6 node to * @desc This sends an ICMPv4 packet from an dual stack IPv4/IPv6 node to Loading Loading @@ -1240,7 +1240,7 @@ group rfc791Fns { }//end f_sendIpv4Packet }//end f_sendIpv4Packet }//end rfc791Fns }//end rfc791RootFns } // end module LibIpv6_Interface_Functions } // end module LibIpv6_Interface_Functions ttcn3/EtsiLibrary/LibIpv6/LibCore/LibIpv6_Rfc2461NeighborDiscovery_TypesAndValues.ttcn +0 −3 Original line number Original line Diff line number Diff line Loading @@ -103,9 +103,6 @@ group ndTypes { group ndTypes { type Ipv6Address Prefix ; type Ipv6Address Prefix ; }//end group ndTypes }//end group ndTypes Loading ttcn3/EtsiLibrary/LibIpv6/LibTransitioning/LibIpv6_CommonTrans_Functions.ttcn 0 → 100644 +195 −0 Original line number Original line Diff line number Diff line /* * @author STF 276 * @version $Id$ * @desc This module specifies common messages * interchanges (= operations) valid for transitioning for an Ipv6 test component * Functions do not set a test component verdict but instead * use the function return value instead to notify the function * caller about the success of the operation. * */ module LibIpv6_CommonTrans_Functions { //LibCommon import from LibCommon_BasicTypesAndValues all; import from LibCommon_DataStrings all; import from LibCommon_VerdictControl { type FncRetCode }; //LibIpv6 import from LibIpv6_Interface_TypesAndValues all ; import from LibIpv6_Interface_Functions all; import from LibIpv6_Interface_Templates all; import from LibIpv6_CommonRfcs_TypesAndValues all; import from LibIpv6_CommonRfcs_Functions all; import from LibIpv6_ModuleParameters all ; import from LibIpv6_ExternalFunctions all; import from LibIpv6_Rfc792Icmpv4_Templates all; import from LibIpv6_Rfc792Icmpv4_TypesAndValues all; import from LibIpv6_Rfc2463Icmpv6_Templates all; import from LibIpv6_Rfc2461NeighborDiscovery_Templates {template all}; import from LibIpv6_Rfc2461NeighborDiscovery_Functions all ; /* * @desc This sends an ICMPv4 packet with tunneled ICMPv6 from an IPv6to4 node to any * NUT, and waits for a echo reply for a fixed amount of time. * This function can be used to verify that the NUT is * up and running. * @remark Time limit is defined by module parameter PX_TAC (see comp type) * @param p_ipv4TnAddr IPv4 address of testing node which calls this function * @param p_ipv4NutAddr IPv4 address of node under test * @param p_ipv6TnAddr IPv6 address of testing node which calls this function * @param p_ipv6NutAddr IPv6 address of node under test * @return execution status */ function f_ipv4withTunneledIpv6EchoProcUp( in template Ipv4Address p_ipv4TnAddr, in template Ipv4Address p_ipv4NutAddr, in template Ipv6Address p_ipv6TnAddr, in template Ipv6Address p_ipv6NutAddr, out Ipv4Packet p_ipv4Packet ) runs on LibIpv6Node return FncRetCode { var FncRetCode v_ret := e_error; v_ret := f_sendIpv4Packet ( m_ipv4Packet_tunneledIpv6 ( p_ipv4TnAddr, p_ipv4NutAddr, m_echoRequest_noExtHdr_noData ( p_ipv6TnAddr, p_ipv6NutAddr, c_defId, c_defSeqNo ) ) ); if(v_ret != e_success) { log("**** f_ipv4withTunneledIpv6EchoProcUp: Error: Problem in f_sendIpv4Packet. ****"); return v_ret; } tc_ac.start; alt{ [] ipv4Port.receive(mw_ipv4Packet_tunneledIpv6 ( p_ipv4NutAddr, p_ipv4TnAddr, mw_echoReply_noExtHdr_noData ( p_ipv6NutAddr, p_ipv6TnAddr, c_defId, c_defSeqNo ) )) -> value p_ipv4Packet { tc_ac.stop; return e_success; } [] tc_ac.timeout { log("**** f_ipv4withTunneledIpv6EchoProcUp: Timeout tc_ac: Expected message not received. ****"); return e_timeout; } }//end alt }//end f_ipv4withTunneledIpv6EchoProcUp /* * @desc * This function can be used to verify that the NUT is * up and running. * @remark Time limit is defined by module parameter PX_TAC (see comp type) * @param p_relRtAnycastAddr IPv4 address of relay router * @param p_ipv4TnAddr IPv4 address of testing node which calls this function * @param p_ipv4NutAddr IPv4 address of node under test * @param p_ipv6TnAddr IPv6 address of Ping start * @param p_ipv6NutAddr IPv6 address of Ping end * @return execution status */ function f_relayRouterRepliesToEReq_4( in template Ipv4Address p_relRtAnycastAddr, in template Ipv4Address p_ipv4NutAddr, in template Ipv6Address p_ipv6RelRt01Addr, in template Ipv6Address p_ipv6Hs02Addr ) runs on LibIpv6Node return FncRetCode { var FncRetCode v_ret := e_error; tc_ac.start; alt{ [] ipv4Port.receive(mw_ipv4Packet_tunneledIpv6 ( p_ipv4NutAddr, p_relRtAnycastAddr, mw_echoRequest_noExtHdr_noData ( p_ipv6Hs02Addr, p_ipv6RelRt01Addr, c_defId, c_defSeqNo ) )) { tc_ac.stop; } [] tc_ac.timeout { log("**** f_relayRouterRepliesToEReq_4: Timeout tc_ac: Expected message not received. ****"); return e_timeout; } }//end alt v_ret := f_sendIpv4Packet ( m_ipv4Packet_tunneledIpv6 ( p_relRtAnycastAddr, p_ipv4NutAddr, m_echoReply_noExtHdr_noData ( p_ipv6RelRt01Addr, p_ipv6Hs02Addr, c_defId, c_defSeqNo ) ) ); if(v_ret != e_success) { log("**** f_relayRouterRepliesToEReq_4: Error: Problem in f_sendIpv4Packet. ****"); } return v_ret; }//end f_relayRouterRepliesToEReq_4 /* * @desc * This function can be used to verify that the NUT is * up and running. * @remark Time limit is defined by module parameter PX_TAC (see comp type) * @param p_relRtAnycastAddr IPv4 address of relay router * @param p_ipv4TnAddr IPv4 address of testing node which calls this function * @param p_ipv4NutAddr IPv4 address of node under test * @param p_ipv6TnAddr IPv6 address of Ping start * @param p_ipv6NutAddr IPv6 address of Ping end * @return execution status */ function f_receive6to4RtAdv( in template Ipv6Address p_addrIut, out RouterAdvertisement p_rtAdv ) runs on LibIpv6Node return FncRetCode { var FncRetCode v_ret; var float v_raDelay; tc_ac.start; alt { [] ipPort.receive ( mw_rtAdv_noExtHdr ( p_addrIut, c_allNodesMca ) ) -> value p_rtAdv { tc_ac.stop; return e_success; } [] tc_ac.timeout{ return e_timeout; } } // end alt }//end f_receive6to4RtAdv } // end module LibIpv6_CommonTrans_Functions ttcn3/EtsiLibrary/LibIpv6/LibTransitioning/LibIpv6_Rfc792Icmpv4_Functions.ttcn +0 −132 Original line number Original line Diff line number Diff line Loading @@ -167,136 +167,4 @@ }//end f_ipv4ReplyToEReq }//end f_ipv4ReplyToEReq group toBeMovedTo3056Fns{ /* * @desc This sends an ICMPv4 packet with tunneled ICMPv6 from an IPv6to4 node to any * NUT, and waits for a echo reply for a fixed amount of time. * This function can be used to verify that the NUT is * up and running. * @remark Time limit is defined by module parameter PX_TAC (see comp type) * @param p_ipv4TnAddr IPv4 address of testing node which calls this function * @param p_ipv4NutAddr IPv4 address of node under test * @param p_ipv6TnAddr IPv6 address of testing node which calls this function * @param p_ipv6NutAddr IPv6 address of node under test * @return execution status */ function f_ipv4withTunneledIpv6EchoProcUp( in template Ipv4Address p_ipv4TnAddr, in template Ipv4Address p_ipv4NutAddr, in template Ipv6Address p_ipv6TnAddr, in template Ipv6Address p_ipv6NutAddr ) runs on LibIpv6Node return FncRetCode { var FncRetCode v_ret := e_error; v_ret := f_sendIpv4Packet ( m_ipv4Packet_tunneledIpv6 ( p_ipv4TnAddr, p_ipv4NutAddr, m_echoRequest_noExtHdr_noData ( p_ipv6TnAddr, p_ipv6NutAddr, c_defId, c_defSeqNo ) ) ); if(v_ret != e_success) { log("**** f_ipv4withTunneledIpv6EchoProcUp: Error: Problem in f_sendIpv4Packet. ****"); return v_ret; } tc_ac.start; alt{ [] ipv4Port.receive(mw_ipv4Packet_tunneledIpv6 ( p_ipv4NutAddr, p_ipv4TnAddr, mw_echoReply_noExtHdr_noData ( p_ipv6NutAddr, p_ipv6TnAddr, c_defId, c_defSeqNo ) )) { tc_ac.stop; return e_success; } [] tc_ac.timeout { log("**** f_ipv4withTunneledIpv6EchoProcUp: Timeout tc_ac: Expected message not received. ****"); return e_timeout; } }//end alt }//end f_ipv4withTunneledIpv6EchoProcUp /* * @desc * This function can be used to verify that the NUT is * up and running. * @remark Time limit is defined by module parameter PX_TAC (see comp type) * @param p_relRtAnycastAddr IPv4 address of relay router * @param p_ipv4TnAddr IPv4 address of testing node which calls this function * @param p_ipv4NutAddr IPv4 address of node under test * @param p_ipv6TnAddr IPv6 address of Ping start * @param p_ipv6NutAddr IPv6 address of Ping end * @return execution status */ function f_relayRouterRepliesToEReq_4( in template Ipv4Address p_relRtAnycastAddr, in template Ipv4Address p_ipv4NutAddr, in template Ipv6Address p_ipv6RelRt01Addr, in template Ipv6Address p_ipv6Hs02Addr ) runs on LibIpv6Node return FncRetCode { var FncRetCode v_ret := e_error; tc_ac.start; alt{ [] ipv4Port.receive(mw_ipv4Packet_tunneledIpv6 ( p_ipv4NutAddr, p_relRtAnycastAddr, mw_echoRequest_noExtHdr_noData ( p_ipv6Hs02Addr, p_ipv6RelRt01Addr, c_defId, c_defSeqNo ) )) { tc_ac.stop; } [] tc_ac.timeout { log("**** f_relayRouterRepliesToEReq_4: Timeout tc_ac: Expected message not received. ****"); return e_timeout; } }//end alt v_ret := f_sendIpv4Packet ( m_ipv4Packet_tunneledIpv6 ( p_relRtAnycastAddr, p_ipv4NutAddr, m_echoReply_noExtHdr_noData ( p_ipv6RelRt01Addr, p_ipv6Hs02Addr, c_defId, c_defSeqNo ) ) ); if(v_ret != e_success) { log("**** f_relayRouterRepliesToEReq_4: Error: Problem in f_sendIpv4Packet. ****"); } return v_ret; }//end f_relayRouterRepliesToEReq_4 }//end group toBeMoveTo3056Fns } // end module LibIpv6_Rfc792Icmpv6_Functions } // end module LibIpv6_Rfc792Icmpv6_Functions Loading
ttcn3/EtsiLibrary/LibIpv6/LibCommonRfcs/LibIpv6_Interface_Functions.ttcn +2 −2 Original line number Original line Diff line number Diff line Loading @@ -1185,7 +1185,7 @@ group rfc4303Esp_ExtHdrFunctions { }//end group rfc4303Esp_ExtHdrFunctions }//end group rfc4303Esp_ExtHdrFunctions group rfc791Fns { group rfc791RootFns { /* /* * @desc This sends an ICMPv4 packet from an dual stack IPv4/IPv6 node to * @desc This sends an ICMPv4 packet from an dual stack IPv4/IPv6 node to Loading Loading @@ -1240,7 +1240,7 @@ group rfc791Fns { }//end f_sendIpv4Packet }//end f_sendIpv4Packet }//end rfc791Fns }//end rfc791RootFns } // end module LibIpv6_Interface_Functions } // end module LibIpv6_Interface_Functions
ttcn3/EtsiLibrary/LibIpv6/LibCore/LibIpv6_Rfc2461NeighborDiscovery_TypesAndValues.ttcn +0 −3 Original line number Original line Diff line number Diff line Loading @@ -103,9 +103,6 @@ group ndTypes { group ndTypes { type Ipv6Address Prefix ; type Ipv6Address Prefix ; }//end group ndTypes }//end group ndTypes Loading
ttcn3/EtsiLibrary/LibIpv6/LibTransitioning/LibIpv6_CommonTrans_Functions.ttcn 0 → 100644 +195 −0 Original line number Original line Diff line number Diff line /* * @author STF 276 * @version $Id$ * @desc This module specifies common messages * interchanges (= operations) valid for transitioning for an Ipv6 test component * Functions do not set a test component verdict but instead * use the function return value instead to notify the function * caller about the success of the operation. * */ module LibIpv6_CommonTrans_Functions { //LibCommon import from LibCommon_BasicTypesAndValues all; import from LibCommon_DataStrings all; import from LibCommon_VerdictControl { type FncRetCode }; //LibIpv6 import from LibIpv6_Interface_TypesAndValues all ; import from LibIpv6_Interface_Functions all; import from LibIpv6_Interface_Templates all; import from LibIpv6_CommonRfcs_TypesAndValues all; import from LibIpv6_CommonRfcs_Functions all; import from LibIpv6_ModuleParameters all ; import from LibIpv6_ExternalFunctions all; import from LibIpv6_Rfc792Icmpv4_Templates all; import from LibIpv6_Rfc792Icmpv4_TypesAndValues all; import from LibIpv6_Rfc2463Icmpv6_Templates all; import from LibIpv6_Rfc2461NeighborDiscovery_Templates {template all}; import from LibIpv6_Rfc2461NeighborDiscovery_Functions all ; /* * @desc This sends an ICMPv4 packet with tunneled ICMPv6 from an IPv6to4 node to any * NUT, and waits for a echo reply for a fixed amount of time. * This function can be used to verify that the NUT is * up and running. * @remark Time limit is defined by module parameter PX_TAC (see comp type) * @param p_ipv4TnAddr IPv4 address of testing node which calls this function * @param p_ipv4NutAddr IPv4 address of node under test * @param p_ipv6TnAddr IPv6 address of testing node which calls this function * @param p_ipv6NutAddr IPv6 address of node under test * @return execution status */ function f_ipv4withTunneledIpv6EchoProcUp( in template Ipv4Address p_ipv4TnAddr, in template Ipv4Address p_ipv4NutAddr, in template Ipv6Address p_ipv6TnAddr, in template Ipv6Address p_ipv6NutAddr, out Ipv4Packet p_ipv4Packet ) runs on LibIpv6Node return FncRetCode { var FncRetCode v_ret := e_error; v_ret := f_sendIpv4Packet ( m_ipv4Packet_tunneledIpv6 ( p_ipv4TnAddr, p_ipv4NutAddr, m_echoRequest_noExtHdr_noData ( p_ipv6TnAddr, p_ipv6NutAddr, c_defId, c_defSeqNo ) ) ); if(v_ret != e_success) { log("**** f_ipv4withTunneledIpv6EchoProcUp: Error: Problem in f_sendIpv4Packet. ****"); return v_ret; } tc_ac.start; alt{ [] ipv4Port.receive(mw_ipv4Packet_tunneledIpv6 ( p_ipv4NutAddr, p_ipv4TnAddr, mw_echoReply_noExtHdr_noData ( p_ipv6NutAddr, p_ipv6TnAddr, c_defId, c_defSeqNo ) )) -> value p_ipv4Packet { tc_ac.stop; return e_success; } [] tc_ac.timeout { log("**** f_ipv4withTunneledIpv6EchoProcUp: Timeout tc_ac: Expected message not received. ****"); return e_timeout; } }//end alt }//end f_ipv4withTunneledIpv6EchoProcUp /* * @desc * This function can be used to verify that the NUT is * up and running. * @remark Time limit is defined by module parameter PX_TAC (see comp type) * @param p_relRtAnycastAddr IPv4 address of relay router * @param p_ipv4TnAddr IPv4 address of testing node which calls this function * @param p_ipv4NutAddr IPv4 address of node under test * @param p_ipv6TnAddr IPv6 address of Ping start * @param p_ipv6NutAddr IPv6 address of Ping end * @return execution status */ function f_relayRouterRepliesToEReq_4( in template Ipv4Address p_relRtAnycastAddr, in template Ipv4Address p_ipv4NutAddr, in template Ipv6Address p_ipv6RelRt01Addr, in template Ipv6Address p_ipv6Hs02Addr ) runs on LibIpv6Node return FncRetCode { var FncRetCode v_ret := e_error; tc_ac.start; alt{ [] ipv4Port.receive(mw_ipv4Packet_tunneledIpv6 ( p_ipv4NutAddr, p_relRtAnycastAddr, mw_echoRequest_noExtHdr_noData ( p_ipv6Hs02Addr, p_ipv6RelRt01Addr, c_defId, c_defSeqNo ) )) { tc_ac.stop; } [] tc_ac.timeout { log("**** f_relayRouterRepliesToEReq_4: Timeout tc_ac: Expected message not received. ****"); return e_timeout; } }//end alt v_ret := f_sendIpv4Packet ( m_ipv4Packet_tunneledIpv6 ( p_relRtAnycastAddr, p_ipv4NutAddr, m_echoReply_noExtHdr_noData ( p_ipv6RelRt01Addr, p_ipv6Hs02Addr, c_defId, c_defSeqNo ) ) ); if(v_ret != e_success) { log("**** f_relayRouterRepliesToEReq_4: Error: Problem in f_sendIpv4Packet. ****"); } return v_ret; }//end f_relayRouterRepliesToEReq_4 /* * @desc * This function can be used to verify that the NUT is * up and running. * @remark Time limit is defined by module parameter PX_TAC (see comp type) * @param p_relRtAnycastAddr IPv4 address of relay router * @param p_ipv4TnAddr IPv4 address of testing node which calls this function * @param p_ipv4NutAddr IPv4 address of node under test * @param p_ipv6TnAddr IPv6 address of Ping start * @param p_ipv6NutAddr IPv6 address of Ping end * @return execution status */ function f_receive6to4RtAdv( in template Ipv6Address p_addrIut, out RouterAdvertisement p_rtAdv ) runs on LibIpv6Node return FncRetCode { var FncRetCode v_ret; var float v_raDelay; tc_ac.start; alt { [] ipPort.receive ( mw_rtAdv_noExtHdr ( p_addrIut, c_allNodesMca ) ) -> value p_rtAdv { tc_ac.stop; return e_success; } [] tc_ac.timeout{ return e_timeout; } } // end alt }//end f_receive6to4RtAdv } // end module LibIpv6_CommonTrans_Functions
ttcn3/EtsiLibrary/LibIpv6/LibTransitioning/LibIpv6_Rfc792Icmpv4_Functions.ttcn +0 −132 Original line number Original line Diff line number Diff line Loading @@ -167,136 +167,4 @@ }//end f_ipv4ReplyToEReq }//end f_ipv4ReplyToEReq group toBeMovedTo3056Fns{ /* * @desc This sends an ICMPv4 packet with tunneled ICMPv6 from an IPv6to4 node to any * NUT, and waits for a echo reply for a fixed amount of time. * This function can be used to verify that the NUT is * up and running. * @remark Time limit is defined by module parameter PX_TAC (see comp type) * @param p_ipv4TnAddr IPv4 address of testing node which calls this function * @param p_ipv4NutAddr IPv4 address of node under test * @param p_ipv6TnAddr IPv6 address of testing node which calls this function * @param p_ipv6NutAddr IPv6 address of node under test * @return execution status */ function f_ipv4withTunneledIpv6EchoProcUp( in template Ipv4Address p_ipv4TnAddr, in template Ipv4Address p_ipv4NutAddr, in template Ipv6Address p_ipv6TnAddr, in template Ipv6Address p_ipv6NutAddr ) runs on LibIpv6Node return FncRetCode { var FncRetCode v_ret := e_error; v_ret := f_sendIpv4Packet ( m_ipv4Packet_tunneledIpv6 ( p_ipv4TnAddr, p_ipv4NutAddr, m_echoRequest_noExtHdr_noData ( p_ipv6TnAddr, p_ipv6NutAddr, c_defId, c_defSeqNo ) ) ); if(v_ret != e_success) { log("**** f_ipv4withTunneledIpv6EchoProcUp: Error: Problem in f_sendIpv4Packet. ****"); return v_ret; } tc_ac.start; alt{ [] ipv4Port.receive(mw_ipv4Packet_tunneledIpv6 ( p_ipv4NutAddr, p_ipv4TnAddr, mw_echoReply_noExtHdr_noData ( p_ipv6NutAddr, p_ipv6TnAddr, c_defId, c_defSeqNo ) )) { tc_ac.stop; return e_success; } [] tc_ac.timeout { log("**** f_ipv4withTunneledIpv6EchoProcUp: Timeout tc_ac: Expected message not received. ****"); return e_timeout; } }//end alt }//end f_ipv4withTunneledIpv6EchoProcUp /* * @desc * This function can be used to verify that the NUT is * up and running. * @remark Time limit is defined by module parameter PX_TAC (see comp type) * @param p_relRtAnycastAddr IPv4 address of relay router * @param p_ipv4TnAddr IPv4 address of testing node which calls this function * @param p_ipv4NutAddr IPv4 address of node under test * @param p_ipv6TnAddr IPv6 address of Ping start * @param p_ipv6NutAddr IPv6 address of Ping end * @return execution status */ function f_relayRouterRepliesToEReq_4( in template Ipv4Address p_relRtAnycastAddr, in template Ipv4Address p_ipv4NutAddr, in template Ipv6Address p_ipv6RelRt01Addr, in template Ipv6Address p_ipv6Hs02Addr ) runs on LibIpv6Node return FncRetCode { var FncRetCode v_ret := e_error; tc_ac.start; alt{ [] ipv4Port.receive(mw_ipv4Packet_tunneledIpv6 ( p_ipv4NutAddr, p_relRtAnycastAddr, mw_echoRequest_noExtHdr_noData ( p_ipv6Hs02Addr, p_ipv6RelRt01Addr, c_defId, c_defSeqNo ) )) { tc_ac.stop; } [] tc_ac.timeout { log("**** f_relayRouterRepliesToEReq_4: Timeout tc_ac: Expected message not received. ****"); return e_timeout; } }//end alt v_ret := f_sendIpv4Packet ( m_ipv4Packet_tunneledIpv6 ( p_relRtAnycastAddr, p_ipv4NutAddr, m_echoReply_noExtHdr_noData ( p_ipv6RelRt01Addr, p_ipv6Hs02Addr, c_defId, c_defSeqNo ) ) ); if(v_ret != e_success) { log("**** f_relayRouterRepliesToEReq_4: Error: Problem in f_sendIpv4Packet. ****"); } return v_ret; }//end f_relayRouterRepliesToEReq_4 }//end group toBeMoveTo3056Fns } // end module LibIpv6_Rfc792Icmpv6_Functions } // end module LibIpv6_Rfc792Icmpv6_Functions