// // $Copyright$ // // $Name: $ // // $Id: EH_HBHOptAfterDstOpt.def,v 1.1.1.1 2000/10/31 22:39:20 sekiya Exp $ // // // ICMP echo request // FEM_icmp6_echo_request_exth(echo_request, _HETHER_tn2nut, { _SRC(tnv6()); _DST(nutv6()); }, { header = _HDR_IPV6_NAME(echo_request); exthdr = _dst; exthdr = _hbh; upper = _ICMPV6_NAME(echo_request); }, { payload = echo_data8; } ) Hdr_Destination _dst { option = _Pad6; } Hdr_HopByHop _hbh { option = _Pad6; } Opt_PadN _Pad6 { pad = {0,0,0,0}; } // // ICMP echo reply // FEM_icmp6_echo_reply(echo_reply, _HETHER_nut2tn, { _SRC(nutv6()); _DST(tnv6()); }, { payload = echo_data8; } ) // // ICMP Parameter Problem // FEM_icmp6_parameter_problem( icmperr, _HETHER_nut2tn, { _SRC(nutv6()); _DST(tnv6()); }, { Code = 1; // unrecognized Next Header type encounted Pointer = 40; payload = err; } ) //////////////////////////////////////////////////////////////////////// // data // Payload err { data = right(_PACKET_IPV6_NAME(echo_request), 0); } //---------------------------------------------------------------------- // Neighbor Solicitation and Neighbor Advertisement //---------------------------------------------------------------------- FEM_icmp6_ns( ns, _HETHER_nut2tnsolnode, { _SRC(oneof(nutv6(),nut2v6(_GLOBAL0_UCAST_PRFX,_GLOBAL0_UCAST_PRFXLEN,"Link0"))); _DST(_IPV6_SOLNODE_MCAST(tnv6())); HopLimit = 255; }, { TargetAddress = tnv6(); option = _SLLOPT_nut; } ) FEM_icmp6_na( na, _HETHER_tn2nut, { _SRC(tnv6()); _DST(nutv6()); HopLimit = 255; }, { SFlag = 1; OFlag = 1; TargetAddress = tnv6(); option = _TLLOPT_tn; } ) //---------------------------------------------------------------------- // Payload Data //---------------------------------------------------------------------- Payload echo_data8 { data = {1,2,3,4,5,6,7,8}; }