<?xml version='1.0' encoding='iso-8859-1' standalone='no'?> <doxygen xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="compound.xsd" version="1.4.7"> <compounddef id="ipv4_2icmp_8h" kind="file"> <compoundname>icmp.h</compoundname> <includes refid="arch_8h" local="yes">net/arch.h</includes> <includes refid="opt_8h" local="yes">net/opt.h</includes> <includes refid="pbuf_8h" local="yes">net/pbuf.h</includes> <includes refid="netif_8h" local="yes">net/netif.h</includes> <includedby refid="tcp_8h" local="yes">src/sys/include/net/tcp.h</includedby> <incdepgraph> <node id="660"> <label>net/netif.h</label> <link refid="netif_8h"/> <childnode refid="656" relation="include"> </childnode> <childnode refid="661" relation="include"> </childnode> <childnode refid="664" relation="include"> </childnode> <childnode refid="665" relation="include"> </childnode> <childnode refid="658" relation="include"> </childnode> </node> <node id="654"> <label>arch/cpu.h</label> <link refid="cpu_8h"/> </node> <node id="662"> <label>ubixos/types.h</label> <link refid="types_8h"/> <childnode refid="663" relation="include"> </childnode> </node> <node id="663"> <label>sys/_types.h</label> <link refid="__types_8h"/> </node> <node id="653"> <label>net/arch.h</label> <link refid="arch_8h"/> <childnode refid="654" relation="include"> </childnode> <childnode refid="655" relation="include"> </childnode> </node> <node id="652"> <label>src/sys/include/net/ipv4/icmp.h</label> <link refid="ipv4/icmp.h"/> <childnode refid="653" relation="include"> </childnode> <childnode refid="656" relation="include"> </childnode> <childnode refid="658" relation="include"> </childnode> <childnode refid="660" relation="include"> </childnode> </node> <node id="657"> <label>net/lwipopts.h</label> <link refid="lwipopts_8h"/> </node> <node id="664"> <label>net/ipv4/ip_addr.h</label> <link refid="ipv4_2ip__addr_8h"/> <childnode refid="653" relation="include"> </childnode> </node> <node id="661"> <label>net/err.h</label> <link refid="err_8h"/> <childnode refid="662" relation="include"> </childnode> <childnode refid="659" relation="include"> </childnode> <childnode refid="655" relation="include"> </childnode> </node> <node id="656"> <label>net/opt.h</label> <link refid="opt_8h"/> <childnode refid="657" relation="include"> </childnode> </node> <node id="658"> <label>net/pbuf.h</label> <link refid="pbuf_8h"/> <childnode refid="659" relation="include"> </childnode> <childnode refid="653" relation="include"> </childnode> </node> <node id="659"> <label>net/debug.h</label> <link refid="debug_8h"/> </node> <node id="665"> <label>net/ipv4/inet.h</label> <link refid="ipv4_2inet_8h"/> <childnode refid="653" relation="include"> </childnode> <childnode refid="656" relation="include"> </childnode> <childnode refid="658" relation="include"> </childnode> <childnode refid="664" relation="include"> </childnode> </node> <node id="655"> <label>arch/cc.h</label> <link refid="cc_8h"/> </node> </incdepgraph> <invincdepgraph> <node id="678"> <label>src/sys/net/net/udpecho.c</label> <link refid="udpecho_8c"/> </node> <node id="680"> <label>src/sys/net/netif/tcpdump.c</label> <link refid="tcpdump_8c"/> </node> <node id="679"> <label>src/sys/net/netif/loopif.c</label> <link refid="loopif_8c"/> </node> <node id="667"> <label>src/sys/include/net/tcp.h</label> <link refid="tcp_8h"/> <childnode refid="668" relation="include"> </childnode> <childnode refid="669" relation="include"> </childnode> <childnode refid="672" relation="include"> </childnode> <childnode refid="679" relation="include"> </childnode> <childnode refid="680" relation="include"> </childnode> </node> <node id="666"> <label>src/sys/include/net/ipv4/icmp.h</label> <link refid="ipv4/icmp.h"/> <childnode refid="667" relation="include"> </childnode> </node> <node id="676"> <label>src/sys/net/net/bot.c</label> <link refid="bot_8c"/> </node> <node id="672"> <label>src/sys/net/api/tcpip.c</label> <link refid="tcpip_8c"/> </node> <node id="670"> <label>src/sys/include/net/tcpip.h</label> <link refid="tcpip_8h"/> <childnode refid="671" relation="include"> </childnode> <childnode refid="672" relation="include"> </childnode> <childnode refid="673" relation="include"> </childnode> </node> <node id="669"> <label>src/sys/include/net/api_msg.h</label> <link refid="api__msg_8h"/> <childnode refid="670" relation="include"> </childnode> <childnode refid="674" relation="include"> </childnode> <childnode refid="671" relation="include"> </childnode> </node> <node id="677"> <label>src/sys/net/net/shell.c</label> <link refid="shell_8c"/> </node> <node id="674"> <label>src/sys/net/api/api_lib.c</label> <link refid="api__lib_8c"/> </node> <node id="673"> <label>src/sys/net/net/init.c</label> <link refid="init_8c"/> </node> <node id="668"> <label>src/sys/include/net/api.h</label> <link refid="api_8h"/> <childnode refid="669" relation="include"> </childnode> <childnode refid="674" relation="include"> </childnode> <childnode refid="675" relation="include"> </childnode> <childnode refid="676" relation="include"> </childnode> <childnode refid="677" relation="include"> </childnode> <childnode refid="678" relation="include"> </childnode> </node> <node id="675"> <label>src/sys/net/api/sockets.c</label> <link refid="sockets_8c"/> </node> <node id="671"> <label>src/sys/net/api/api_msg.c</label> <link refid="api__msg_8c"/> </node> </invincdepgraph> <innerclass refid="structicmp__dur__hdr" prot="public">icmp_dur_hdr</innerclass> <innerclass refid="structicmp__echo__hdr" prot="public">icmp_echo_hdr</innerclass> <innerclass refid="structicmp__te__hdr" prot="public">icmp_te_hdr</innerclass> <sectiondef kind="define"> <memberdef kind="define" id="ipv4_2icmp_8h_187f8266c067fb604419fbf17c0d57d64" prot="public" static="no"> <name>ICMP_DUR</name> <initializer>3</initializer> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> <inbodydescription> </inbodydescription> <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" line="46" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" bodystart="46" bodyend="-1"/> </memberdef> <memberdef kind="define" id="ipv4_2icmp_8h_1d58231410d58e34b455328b888a9e73c" prot="public" static="no"> <name>ICMP_ECHO</name> <initializer>8</initializer> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> <inbodydescription> </inbodydescription> <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" line="49" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" bodystart="49" bodyend="-1"/> </memberdef> <memberdef kind="define" id="ipv4_2icmp_8h_1f1ff8912ae85b066d9dbe6caf3334ab7" prot="public" static="no"> <name>ICMP_ER</name> <initializer>0</initializer> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> <inbodydescription> </inbodydescription> <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" line="45" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" bodystart="45" bodyend="-1"/> </memberdef> <memberdef kind="define" id="ipv4_2icmp_8h_1f9698624c0200d6be1681c9b5243d1e9" prot="public" static="no"> <name>ICMP_IR</name> <initializer>16</initializer> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> <inbodydescription> </inbodydescription> <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" line="55" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" bodystart="55" bodyend="-1"/> </memberdef> <memberdef kind="define" id="ipv4_2icmp_8h_155b78957e5ffd7aae0db3742b2c556a4" prot="public" static="no"> <name>ICMP_IRQ</name> <initializer>15</initializer> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> <inbodydescription> </inbodydescription> <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" line="54" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" bodystart="54" bodyend="-1"/> </memberdef> <memberdef kind="define" id="ipv4_2icmp_8h_1495e2e90e09c924c16ad8e6fef4b89dc" prot="public" static="no"> <name>ICMP_PP</name> <initializer>12</initializer> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> <inbodydescription> </inbodydescription> <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" line="51" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" bodystart="51" bodyend="-1"/> </memberdef> <memberdef kind="define" id="ipv4_2icmp_8h_1f8671e386aaa07888ad2bcb6150b113f" prot="public" static="no"> <name>ICMP_RD</name> <initializer>5</initializer> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> <inbodydescription> </inbodydescription> <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" line="48" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" bodystart="48" bodyend="-1"/> </memberdef> <memberdef kind="define" id="ipv4_2icmp_8h_1eaa5cc8a0b5b0c7ffe590991b3b2a262" prot="public" static="no"> <name>ICMP_SQ</name> <initializer>4</initializer> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> <inbodydescription> </inbodydescription> <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" line="47" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" bodystart="47" bodyend="-1"/> </memberdef> <memberdef kind="define" id="ipv4_2icmp_8h_158e03a47804158d97a9c069cc2204797" prot="public" static="no"> <name>ICMP_TE</name> <initializer>11</initializer> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> <inbodydescription> </inbodydescription> <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" line="50" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" bodystart="50" bodyend="-1"/> </memberdef> <memberdef kind="define" id="ipv4_2icmp_8h_1776eca11e543699d8e55d470b3809a05" prot="public" static="no"> <name>ICMP_TS</name> <initializer>13</initializer> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> <inbodydescription> </inbodydescription> <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" line="52" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" bodystart="52" bodyend="-1"/> </memberdef> <memberdef kind="define" id="ipv4_2icmp_8h_101f3814d260088de9777de2634130070" prot="public" static="no"> <name>ICMP_TSR</name> <initializer>14</initializer> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> <inbodydescription> </inbodydescription> <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" line="53" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" bodystart="53" bodyend="-1"/> </memberdef> <memberdef kind="define" id="ipv4_2icmp_8h_1598231bf61f3b0e9f9a3117c385e0396" prot="public" static="no"> <name>ICMPH_CODE</name> <param><defname>hdr</defname></param> <initializer>(NTOHS((hdr)->_type_code) & 0xff)</initializer> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> <inbodydescription> </inbodydescription> <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" line="98" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" bodystart="98" bodyend="-1"/> </memberdef> <memberdef kind="define" id="ipv4_2icmp_8h_1e69d6e0272aa0db81df1555c069cda34" prot="public" static="no"> <name>ICMPH_CODE_SET</name> <param><defname>hdr</defname></param> <param><defname>code</defname></param> <initializer>((hdr)->_type_code = HTONS((code) | (ICMPH_TYPE(hdr) << 8)))</initializer> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> <inbodydescription> </inbodydescription> <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" line="101" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" bodystart="101" bodyend="-1"/> </memberdef> <memberdef kind="define" id="ipv4_2icmp_8h_122fef4dade8b0b3b49651e2a2cb73c79" prot="public" static="no"> <name>ICMPH_TYPE</name> <param><defname>hdr</defname></param> <initializer>(NTOHS((hdr)->_type_code) >> 8)</initializer> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> <inbodydescription> </inbodydescription> <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" line="97" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" bodystart="97" bodyend="-1"/> </memberdef> <memberdef kind="define" id="ipv4_2icmp_8h_105b6457f9d5d496aafebe97dccb61926" prot="public" static="no"> <name>ICMPH_TYPE_SET</name> <param><defname>hdr</defname></param> <param><defname>type</defname></param> <initializer>((hdr)->_type_code = HTONS(ICMPH_CODE(hdr) | ((type) << 8)))</initializer> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> <inbodydescription> </inbodydescription> <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" line="100" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" bodystart="100" bodyend="-1"/> </memberdef> </sectiondef> <sectiondef kind="enum"> <memberdef kind="enum" id="ipv4_2icmp_8h_117637465f209385e5d19ef47fd9266a5" prot="public" static="no"> <name>icmp_dur_type</name> <enumvalue id="ipv4_2icmp_8h_117637465f209385e5d19ef47fd9266a53cc3714544e123bdef2eadb1a4d320e3" prot="public"> <name>ICMP_DUR_NET</name> <initializer> 0</initializer> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> </enumvalue> <enumvalue id="ipv4_2icmp_8h_117637465f209385e5d19ef47fd9266a5648ab915a76dfb7b9568e94de00da1e7" prot="public"> <name>ICMP_DUR_HOST</name> <initializer> 1</initializer> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> </enumvalue> <enumvalue id="ipv4_2icmp_8h_117637465f209385e5d19ef47fd9266a53c7bbd13b613990413ef167017dfbcef" prot="public"> <name>ICMP_DUR_PROTO</name> <initializer> 2</initializer> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> </enumvalue> <enumvalue id="ipv4_2icmp_8h_117637465f209385e5d19ef47fd9266a5c973dd9b04e094043ccc4cf875ef5644" prot="public"> <name>ICMP_DUR_PORT</name> <initializer> 3</initializer> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> </enumvalue> <enumvalue id="ipv4_2icmp_8h_117637465f209385e5d19ef47fd9266a58be2bc49d42aa1a6ee1da93a8700ef5f" prot="public"> <name>ICMP_DUR_FRAG</name> <initializer> 4</initializer> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> </enumvalue> <enumvalue id="ipv4_2icmp_8h_117637465f209385e5d19ef47fd9266a5f63296fc25f79e56946a56a8da132c13" prot="public"> <name>ICMP_DUR_SR</name> <initializer> 5</initializer> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> </enumvalue> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> <inbodydescription> </inbodydescription> <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" line="57" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" bodystart="57" bodyend="64"/> </memberdef> <memberdef kind="enum" id="ipv4_2icmp_8h_1058d0a0769bd38db99fc6fd1dad1324a" prot="public" static="no"> <name>icmp_te_type</name> <enumvalue id="ipv4_2icmp_8h_1058d0a0769bd38db99fc6fd1dad1324a827a1f8705826a6cc3c22e2571acf02c" prot="public"> <name>ICMP_TE_TTL</name> <initializer> 0</initializer> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> </enumvalue> <enumvalue id="ipv4_2icmp_8h_1058d0a0769bd38db99fc6fd1dad1324a4d351874c3e2d4a4cf46569df28cd796" prot="public"> <name>ICMP_TE_FRAG</name> <initializer> 1</initializer> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> </enumvalue> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> <inbodydescription> </inbodydescription> <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" line="66" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" bodystart="66" bodyend="69"/> </memberdef> </sectiondef> <sectiondef kind="func"> <memberdef kind="function" id="ipv4_2icmp_8h_1e26c59eab4ce553964a0c9d43f534d06" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual"> <type>void</type> <definition>void icmp_dest_unreach</definition> <argsstring>(struct pbuf *p, enum icmp_dur_type t)</argsstring> <name>icmp_dest_unreach</name> <param> <type>struct <ref refid="structpbuf" kindref="compound">pbuf</ref> *</type> <declname>p</declname> </param> <param> <type>enum <ref refid="ipv4_2icmp_8h_117637465f209385e5d19ef47fd9266a5" kindref="member">icmp_dur_type</ref></type> <declname>t</declname> </param> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> <inbodydescription> </inbodydescription> <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" line="73"/> </memberdef> <memberdef kind="function" id="ipv4_2icmp_8h_1c929e48a1dddf98050b73a2633fcaef1" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual"> <type>void</type> <definition>void icmp_input</definition> <argsstring>(struct pbuf *p, struct netif *inp)</argsstring> <name>icmp_input</name> <param> <type>struct <ref refid="structpbuf" kindref="compound">pbuf</ref> *</type> <declname>p</declname> </param> <param> <type>struct <ref refid="structnetif" kindref="compound">netif</ref> *</type> <declname>inp</declname> </param> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> <inbodydescription> </inbodydescription> <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" line="71"/> </memberdef> <memberdef kind="function" id="ipv4_2icmp_8h_149723e5e11c4bbc86197e58fdca7c119" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual"> <type>void</type> <definition>void icmp_time_exceeded</definition> <argsstring>(struct pbuf *p, enum icmp_te_type t)</argsstring> <name>icmp_time_exceeded</name> <param> <type>struct <ref refid="structpbuf" kindref="compound">pbuf</ref> *</type> <declname>p</declname> </param> <param> <type>enum <ref refid="ipv4_2icmp_8h_1058d0a0769bd38db99fc6fd1dad1324a" kindref="member">icmp_te_type</ref></type> <declname>t</declname> </param> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> <inbodydescription> </inbodydescription> <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" line="74"/> </memberdef> </sectiondef> <sectiondef kind="var"> <memberdef kind="variable" id="ipv4_2icmp_8h_1e50c6fc46bd03e2164637a4903b22d30" prot="public" static="no" mutable="no"> <type><ref refid="structicmp__te__hdr" kindref="compound">icmp_te_hdr</ref></type> <definition>struct icmp_te_hdr PACK_STRUCT_STRUCT</definition> <argsstring></argsstring> <name>PACK_STRUCT_STRUCT</name> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> <inbodydescription> </inbodydescription> <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" line="95"/> </memberdef> <memberdef kind="variable" id="ipv4_2icmp_8h_130316c8093c1b3d83652eaeefebb99c6" prot="public" static="no" mutable="no"> <type><ref refid="structicmp__dur__hdr" kindref="compound">icmp_dur_hdr</ref></type> <definition>struct icmp_dur_hdr PACK_STRUCT_STRUCT</definition> <argsstring></argsstring> <name>PACK_STRUCT_STRUCT</name> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> <inbodydescription> </inbodydescription> <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" line="89"/> </memberdef> <memberdef kind="variable" id="ipv4_2icmp_8h_1c61f7d066bb03b3111b5d6d1dabb2d21" prot="public" static="no" mutable="no"> <type><ref refid="structicmp__echo__hdr" kindref="compound">icmp_echo_hdr</ref></type> <definition>struct icmp_echo_hdr PACK_STRUCT_STRUCT</definition> <argsstring></argsstring> <name>PACK_STRUCT_STRUCT</name> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> <inbodydescription> </inbodydescription> <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h" line="81"/> </memberdef> </sectiondef> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> <programlisting> <codeline lineno="1"><highlight class="comment">/*</highlight></codeline> <codeline lineno="2"><highlight class="comment"><sp/>*<sp/>Copyright<sp/>(c)<sp/>2001,<sp/>Swedish<sp/>Institute<sp/>of<sp/>Computer<sp/>Science.</highlight></codeline> <codeline lineno="3"><highlight class="comment"><sp/>*<sp/>All<sp/>rights<sp/>reserved.<sp/></highlight></codeline> <codeline lineno="4"><highlight class="comment"><sp/>*</highlight></codeline> <codeline lineno="5"><highlight class="comment"><sp/>*<sp/>Redistribution<sp/>and<sp/>use<sp/>in<sp/>source<sp/>and<sp/>binary<sp/>forms,<sp/>with<sp/>or<sp/>without<sp/></highlight></codeline> <codeline lineno="6"><highlight class="comment"><sp/>*<sp/>modification,<sp/>are<sp/>permitted<sp/>provided<sp/>that<sp/>the<sp/>following<sp/>conditions<sp/></highlight></codeline> <codeline lineno="7"><highlight class="comment"><sp/>*<sp/>are<sp/>met:<sp/></highlight></codeline> <codeline lineno="8"><highlight class="comment"><sp/>*<sp/>1.<sp/>Redistributions<sp/>of<sp/>source<sp/>code<sp/>must<sp/>retain<sp/>the<sp/>above<sp/>copyright<sp/></highlight></codeline> <codeline lineno="9"><highlight class="comment"><sp/>*<sp/><sp/><sp/><sp/>notice,<sp/>this<sp/>list<sp/>of<sp/>conditions<sp/>and<sp/>the<sp/>following<sp/>disclaimer.<sp/></highlight></codeline> <codeline lineno="10"><highlight class="comment"><sp/>*<sp/>2.<sp/>Redistributions<sp/>in<sp/>binary<sp/>form<sp/>must<sp/>reproduce<sp/>the<sp/>above<sp/>copyright<sp/></highlight></codeline> <codeline lineno="11"><highlight class="comment"><sp/>*<sp/><sp/><sp/><sp/>notice,<sp/>this<sp/>list<sp/>of<sp/>conditions<sp/>and<sp/>the<sp/>following<sp/>disclaimer<sp/>in<sp/>the<sp/></highlight></codeline> <codeline lineno="12"><highlight class="comment"><sp/>*<sp/><sp/><sp/><sp/>documentation<sp/>and/or<sp/>other<sp/>materials<sp/>provided<sp/>with<sp/>the<sp/>distribution.<sp/></highlight></codeline> <codeline lineno="13"><highlight class="comment"><sp/>*<sp/>3.<sp/>Neither<sp/>the<sp/>name<sp/>of<sp/>the<sp/>Institute<sp/>nor<sp/>the<sp/>names<sp/>of<sp/>its<sp/>contributors<sp/></highlight></codeline> <codeline lineno="14"><highlight class="comment"><sp/>*<sp/><sp/><sp/><sp/>may<sp/>be<sp/>used<sp/>to<sp/>endorse<sp/>or<sp/>promote<sp/>products<sp/>derived<sp/>from<sp/>this<sp/>software<sp/></highlight></codeline> <codeline lineno="15"><highlight class="comment"><sp/>*<sp/><sp/><sp/><sp/>without<sp/>specific<sp/>prior<sp/>written<sp/>permission.<sp/></highlight></codeline> <codeline lineno="16"><highlight class="comment"><sp/>*</highlight></codeline> <codeline lineno="17"><highlight class="comment"><sp/>*<sp/>THIS<sp/>SOFTWARE<sp/>IS<sp/>PROVIDED<sp/>BY<sp/>THE<sp/>INSTITUTE<sp/>AND<sp/>CONTRIBUTORS<sp/>``AS<sp/>IS''<sp/>AND<sp/></highlight></codeline> <codeline lineno="18"><highlight class="comment"><sp/>*<sp/>ANY<sp/>EXPRESS<sp/>OR<sp/>IMPLIED<sp/>WARRANTIES,<sp/>INCLUDING,<sp/>BUT<sp/>NOT<sp/>LIMITED<sp/>TO,<sp/>THE<sp/></highlight></codeline> <codeline lineno="19"><highlight class="comment"><sp/>*<sp/>IMPLIED<sp/>WARRANTIES<sp/>OF<sp/>MERCHANTABILITY<sp/>AND<sp/>FITNESS<sp/>FOR<sp/>A<sp/>PARTICULAR<sp/>PURPOSE<sp/></highlight></codeline> <codeline lineno="20"><highlight class="comment"><sp/>*<sp/>ARE<sp/>DISCLAIMED.<sp/><sp/>IN<sp/>NO<sp/>EVENT<sp/>SHALL<sp/>THE<sp/>INSTITUTE<sp/>OR<sp/>CONTRIBUTORS<sp/>BE<sp/>LIABLE<sp/></highlight></codeline> <codeline lineno="21"><highlight class="comment"><sp/>*<sp/>FOR<sp/>ANY<sp/>DIRECT,<sp/>INDIRECT,<sp/>INCIDENTAL,<sp/>SPECIAL,<sp/>EXEMPLARY,<sp/>OR<sp/>CONSEQUENTIAL<sp/></highlight></codeline> <codeline lineno="22"><highlight class="comment"><sp/>*<sp/>DAMAGES<sp/>(INCLUDING,<sp/>BUT<sp/>NOT<sp/>LIMITED<sp/>TO,<sp/>PROCUREMENT<sp/>OF<sp/>SUBSTITUTE<sp/>GOODS<sp/></highlight></codeline> <codeline lineno="23"><highlight class="comment"><sp/>*<sp/>OR<sp/>SERVICES;<sp/>LOSS<sp/>OF<sp/>USE,<sp/>DATA,<sp/>OR<sp/>PROFITS;<sp/>OR<sp/>BUSINESS<sp/>INTERRUPTION)<sp/></highlight></codeline> <codeline lineno="24"><highlight class="comment"><sp/>*<sp/>HOWEVER<sp/>CAUSED<sp/>AND<sp/>ON<sp/>ANY<sp/>THEORY<sp/>OF<sp/>LIABILITY,<sp/>WHETHER<sp/>IN<sp/>CONTRACT,<sp/>STRICT<sp/></highlight></codeline> <codeline lineno="25"><highlight class="comment"><sp/>*<sp/>LIABILITY,<sp/>OR<sp/>TORT<sp/>(INCLUDING<sp/>NEGLIGENCE<sp/>OR<sp/>OTHERWISE)<sp/>ARISING<sp/>IN<sp/>ANY<sp/>WAY<sp/></highlight></codeline> <codeline lineno="26"><highlight class="comment"><sp/>*<sp/>OUT<sp/>OF<sp/>THE<sp/>USE<sp/>OF<sp/>THIS<sp/>SOFTWARE,<sp/>EVEN<sp/>IF<sp/>ADVISED<sp/>OF<sp/>THE<sp/>POSSIBILITY<sp/>OF<sp/></highlight></codeline> <codeline lineno="27"><highlight class="comment"><sp/>*<sp/>SUCH<sp/>DAMAGE.<sp/></highlight></codeline> <codeline lineno="28"><highlight class="comment"><sp/>*</highlight></codeline> <codeline lineno="29"><highlight class="comment"><sp/>*<sp/>This<sp/>file<sp/>is<sp/>part<sp/>of<sp/>the<sp/>lwIP<sp/>TCP/IP<sp/>stack.</highlight></codeline> <codeline lineno="30"><highlight class="comment"><sp/>*<sp/></highlight></codeline> <codeline lineno="31"><highlight class="comment"><sp/>*<sp/>Author:<sp/>Adam<sp/>Dunkels<sp/><adam@sics.se></highlight></codeline> <codeline lineno="32"><highlight class="comment"><sp/>*</highlight></codeline> <codeline lineno="33"><highlight class="comment"><sp/>*<sp/>$Id: ipv4_2icmp_8h.xml 88 2016-01-12 00:11:29Z reddawg $</highlight></codeline> <codeline lineno="34"><highlight class="comment"><sp/>*/</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="35"><highlight class="normal"></highlight><highlight class="preprocessor">#ifndef<sp/>__LWIP_ICMP_H__</highlight></codeline> <codeline lineno="36"><highlight class="preprocessor"></highlight><highlight class="preprocessor">#define<sp/>__LWIP_ICMP_H__</highlight></codeline> <codeline lineno="37"><highlight class="preprocessor"></highlight><highlight class="normal"></highlight></codeline> <codeline lineno="38"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/>"<ref refid="arch_8h" kindref="compound">net/arch.h</ref>"</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="39"><highlight class="normal"></highlight></codeline> <codeline lineno="40"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/>"<ref refid="opt_8h" kindref="compound">net/opt.h</ref>"</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="41"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/>"<ref refid="pbuf_8h" kindref="compound">net/pbuf.h</ref>"</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="42"><highlight class="normal"></highlight></codeline> <codeline lineno="43"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/>"<ref refid="netif_8h" kindref="compound">net/netif.h</ref>"</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="44"><highlight class="normal"></highlight></codeline> <codeline lineno="45" refid="ipv4_2icmp_8h_1f1ff8912ae85b066d9dbe6caf3334ab7" refkind="member"><highlight class="normal"></highlight><highlight class="preprocessor">#define<sp/>ICMP_ER<sp/>0<sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="comment">/*<sp/>echo<sp/>reply<sp/>*/</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="46" refid="ipv4_2icmp_8h_187f8266c067fb604419fbf17c0d57d64" refkind="member"><highlight class="normal"></highlight><highlight class="preprocessor">#define<sp/>ICMP_DUR<sp/>3<sp/><sp/><sp/><sp/><sp/></highlight><highlight class="comment">/*<sp/>destination<sp/>unreachable<sp/>*/</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="47" refid="ipv4_2icmp_8h_1eaa5cc8a0b5b0c7ffe590991b3b2a262" refkind="member"><highlight class="normal"></highlight><highlight class="preprocessor">#define<sp/>ICMP_SQ<sp/>4<sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="comment">/*<sp/>source<sp/>quench<sp/>*/</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="48" refid="ipv4_2icmp_8h_1f8671e386aaa07888ad2bcb6150b113f" refkind="member"><highlight class="normal"></highlight><highlight class="preprocessor">#define<sp/>ICMP_RD<sp/>5<sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="comment">/*<sp/>redirect<sp/>*/</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="49" refid="ipv4_2icmp_8h_1d58231410d58e34b455328b888a9e73c" refkind="member"><highlight class="normal"></highlight><highlight class="preprocessor">#define<sp/>ICMP_ECHO<sp/>8<sp/><sp/><sp/><sp/></highlight><highlight class="comment">/*<sp/>echo<sp/>*/</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="50" refid="ipv4_2icmp_8h_158e03a47804158d97a9c069cc2204797" refkind="member"><highlight class="normal"></highlight><highlight class="preprocessor">#define<sp/>ICMP_TE<sp/>11<sp/><sp/><sp/><sp/><sp/></highlight><highlight class="comment">/*<sp/>time<sp/>exceeded<sp/>*/</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="51" refid="ipv4_2icmp_8h_1495e2e90e09c924c16ad8e6fef4b89dc" refkind="member"><highlight class="normal"></highlight><highlight class="preprocessor">#define<sp/>ICMP_PP<sp/>12<sp/><sp/><sp/><sp/><sp/></highlight><highlight class="comment">/*<sp/>parameter<sp/>problem<sp/>*/</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="52" refid="ipv4_2icmp_8h_1776eca11e543699d8e55d470b3809a05" refkind="member"><highlight class="normal"></highlight><highlight class="preprocessor">#define<sp/>ICMP_TS<sp/>13<sp/><sp/><sp/><sp/><sp/></highlight><highlight class="comment">/*<sp/>timestamp<sp/>*/</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="53" refid="ipv4_2icmp_8h_101f3814d260088de9777de2634130070" refkind="member"><highlight class="normal"></highlight><highlight class="preprocessor">#define<sp/>ICMP_TSR<sp/>14<sp/><sp/><sp/><sp/></highlight><highlight class="comment">/*<sp/>timestamp<sp/>reply<sp/>*/</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="54" refid="ipv4_2icmp_8h_155b78957e5ffd7aae0db3742b2c556a4" refkind="member"><highlight class="normal"></highlight><highlight class="preprocessor">#define<sp/>ICMP_IRQ<sp/>15<sp/><sp/><sp/><sp/></highlight><highlight class="comment">/*<sp/>information<sp/>request<sp/>*/</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="55" refid="ipv4_2icmp_8h_1f9698624c0200d6be1681c9b5243d1e9" refkind="member"><highlight class="normal"></highlight><highlight class="preprocessor">#define<sp/>ICMP_IR<sp/>16<sp/><sp/><sp/><sp/><sp/></highlight><highlight class="comment">/*<sp/>information<sp/>reply<sp/>*/</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="56"><highlight class="normal"></highlight></codeline> <codeline lineno="57" refid="ipv4_2icmp_8h_117637465f209385e5d19ef47fd9266a5" refkind="member"><highlight class="normal"></highlight><highlight class="keyword">enum</highlight><highlight class="normal"><sp/><ref refid="ipv4_2icmp_8h_117637465f209385e5d19ef47fd9266a5" kindref="member">icmp_dur_type</ref><sp/>{</highlight></codeline> <codeline lineno="58"><highlight class="normal"><sp/><sp/><ref refid="ipv4_2icmp_8h_117637465f209385e5d19ef47fd9266a53cc3714544e123bdef2eadb1a4d320e3" kindref="member">ICMP_DUR_NET</ref><sp/>=<sp/>0,<sp/><sp/><sp/><sp/></highlight><highlight class="comment">/*<sp/>net<sp/>unreachable<sp/>*/</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="59"><highlight class="normal"><sp/><sp/><ref refid="ipv4_2icmp_8h_117637465f209385e5d19ef47fd9266a5648ab915a76dfb7b9568e94de00da1e7" kindref="member">ICMP_DUR_HOST</ref><sp/>=<sp/>1,<sp/><sp/><sp/></highlight><highlight class="comment">/*<sp/>host<sp/>unreachable<sp/>*/</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="60"><highlight class="normal"><sp/><sp/><ref refid="ipv4_2icmp_8h_117637465f209385e5d19ef47fd9266a53c7bbd13b613990413ef167017dfbcef" kindref="member">ICMP_DUR_PROTO</ref><sp/>=<sp/>2,<sp/><sp/></highlight><highlight class="comment">/*<sp/>protocol<sp/>unreachable<sp/>*/</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="61"><highlight class="normal"><sp/><sp/><ref refid="ipv4_2icmp_8h_117637465f209385e5d19ef47fd9266a5c973dd9b04e094043ccc4cf875ef5644" kindref="member">ICMP_DUR_PORT</ref><sp/>=<sp/>3,<sp/><sp/><sp/></highlight><highlight class="comment">/*<sp/>port<sp/>unreachable<sp/>*/</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="62"><highlight class="normal"><sp/><sp/><ref refid="ipv4_2icmp_8h_117637465f209385e5d19ef47fd9266a58be2bc49d42aa1a6ee1da93a8700ef5f" kindref="member">ICMP_DUR_FRAG</ref><sp/>=<sp/>4,<sp/><sp/><sp/></highlight><highlight class="comment">/*<sp/>fragmentation<sp/>needed<sp/>and<sp/>DF<sp/>set<sp/>*/</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="63"><highlight class="normal"><sp/><sp/><ref refid="ipv4_2icmp_8h_117637465f209385e5d19ef47fd9266a5f63296fc25f79e56946a56a8da132c13" kindref="member">ICMP_DUR_SR</ref><sp/>=<sp/>5<sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="comment">/*<sp/>source<sp/>route<sp/>failed<sp/>*/</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="64"><highlight class="normal">};</highlight></codeline> <codeline lineno="65"><highlight class="normal"></highlight></codeline> <codeline lineno="66" refid="ipv4_2icmp_8h_1058d0a0769bd38db99fc6fd1dad1324a" refkind="member"><highlight class="normal"></highlight><highlight class="keyword">enum</highlight><highlight class="normal"><sp/><ref refid="ipv4_2icmp_8h_1058d0a0769bd38db99fc6fd1dad1324a" kindref="member">icmp_te_type</ref><sp/>{</highlight></codeline> <codeline lineno="67"><highlight class="normal"><sp/><sp/><ref refid="ipv4_2icmp_8h_1058d0a0769bd38db99fc6fd1dad1324a827a1f8705826a6cc3c22e2571acf02c" kindref="member">ICMP_TE_TTL</ref><sp/>=<sp/>0,<sp/><sp/><sp/><sp/><sp/></highlight><highlight class="comment">/*<sp/>time<sp/>to<sp/>live<sp/>exceeded<sp/>in<sp/>transit<sp/>*/</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="68"><highlight class="normal"><sp/><sp/><ref refid="ipv4_2icmp_8h_1058d0a0769bd38db99fc6fd1dad1324a4d351874c3e2d4a4cf46569df28cd796" kindref="member">ICMP_TE_FRAG</ref><sp/>=<sp/>1<sp/><sp/><sp/><sp/><sp/></highlight><highlight class="comment">/*<sp/>fragment<sp/>reassembly<sp/>time<sp/>exceeded<sp/>*/</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="69"><highlight class="normal">};</highlight></codeline> <codeline lineno="70"><highlight class="normal"></highlight></codeline> <codeline lineno="71"><highlight class="normal"></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/><ref refid="ipv4_2icmp_8h_1c929e48a1dddf98050b73a2633fcaef1" kindref="member">icmp_input</ref>(</highlight><highlight class="keyword">struct</highlight><highlight class="normal"><sp/><ref refid="structpbuf" kindref="compound">pbuf</ref><sp/>*p,<sp/></highlight><highlight class="keyword">struct</highlight><highlight class="normal"><sp/><ref refid="structnetif" kindref="compound">netif</ref><sp/>*inp);</highlight></codeline> <codeline lineno="72"><highlight class="normal"></highlight></codeline> <codeline lineno="73"><highlight class="normal"></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/><ref refid="ipv4_2icmp_8h_1e26c59eab4ce553964a0c9d43f534d06" kindref="member">icmp_dest_unreach</ref>(</highlight><highlight class="keyword">struct</highlight><highlight class="normal"><sp/><ref refid="structpbuf" kindref="compound">pbuf</ref><sp/>*p,<sp/></highlight><highlight class="keyword">enum</highlight><highlight class="normal"><sp/><ref refid="ipv4_2icmp_8h_117637465f209385e5d19ef47fd9266a5" kindref="member">icmp_dur_type</ref><sp/>t);</highlight></codeline> <codeline lineno="74"><highlight class="normal"></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/><ref refid="ipv4_2icmp_8h_149723e5e11c4bbc86197e58fdca7c119" kindref="member">icmp_time_exceeded</ref>(</highlight><highlight class="keyword">struct</highlight><highlight class="normal"><sp/><ref refid="structpbuf" kindref="compound">pbuf</ref><sp/>*p,<sp/></highlight><highlight class="keyword">enum</highlight><highlight class="normal"><sp/><ref refid="ipv4_2icmp_8h_1058d0a0769bd38db99fc6fd1dad1324a" kindref="member">icmp_te_type</ref><sp/>t);</highlight></codeline> <codeline lineno="75"><highlight class="normal"></highlight></codeline> <codeline lineno="76" refid="structicmp__echo__hdr" refkind="compound"><highlight class="normal"></highlight><highlight class="keyword">struct<sp/></highlight><highlight class="normal"><ref refid="structicmp__echo__hdr" kindref="compound">icmp_echo_hdr</ref><sp/>{</highlight></codeline> <codeline lineno="77"><highlight class="normal"><sp/><sp/><ref refid="structicmp__echo__hdr_1b1219f4ee9ad3b8f988904aaacf7138b" kindref="member">PACK_STRUCT_FIELD</ref>(<ref refid="types_8h_13b65128d2644e9b80cec9a69bfa7e094" kindref="member">uInt16</ref><sp/>_type_code);</highlight></codeline> <codeline lineno="78"><highlight class="normal"><sp/><sp/><ref refid="structicmp__echo__hdr_1b1219f4ee9ad3b8f988904aaacf7138b" kindref="member">PACK_STRUCT_FIELD</ref>(<ref refid="types_8h_13b65128d2644e9b80cec9a69bfa7e094" kindref="member">uInt16</ref><sp/><ref refid="structicmp__echo__hdr_165ffa20f2da497b6ca7f2e2c75cc740a" kindref="member">chksum</ref>);</highlight></codeline> <codeline lineno="79"><highlight class="normal"><sp/><sp/><ref refid="structicmp__echo__hdr_1b1219f4ee9ad3b8f988904aaacf7138b" kindref="member">PACK_STRUCT_FIELD</ref>(<ref refid="types_8h_13b65128d2644e9b80cec9a69bfa7e094" kindref="member">uInt16</ref><sp/></highlight><highlight class="keywordtype">id</highlight><highlight class="normal">);</highlight></codeline> <codeline lineno="80"><highlight class="normal"><sp/><sp/><ref refid="structicmp__echo__hdr_1b1219f4ee9ad3b8f988904aaacf7138b" kindref="member">PACK_STRUCT_FIELD</ref>(<ref refid="types_8h_13b65128d2644e9b80cec9a69bfa7e094" kindref="member">uInt16</ref><sp/><ref refid="structicmp__echo__hdr_142ade6a5230d4161c272fcaec67b7c3d" kindref="member">seqno</ref>);</highlight></codeline> <codeline lineno="81"><highlight class="normal">}<sp/><ref refid="cc_8h_133623da05bb55497534c3dc26ebebeb2" kindref="member">PACK_STRUCT_STRUCT</ref>;</highlight></codeline> <codeline lineno="82"><highlight class="normal"></highlight></codeline> <codeline lineno="83"><highlight class="normal"></highlight></codeline> <codeline lineno="84"><highlight class="normal"></highlight></codeline> <codeline lineno="85" refid="structicmp__dur__hdr" refkind="compound"><highlight class="normal"></highlight><highlight class="keyword">struct<sp/></highlight><highlight class="normal"><ref refid="structicmp__dur__hdr" kindref="compound">icmp_dur_hdr</ref><sp/>{</highlight></codeline> <codeline lineno="86"><highlight class="normal"><sp/><sp/><ref refid="structicmp__dur__hdr_17fc1a2c96daa015d5e9c8c5581149dbe" kindref="member">PACK_STRUCT_FIELD</ref>(<ref refid="types_8h_13b65128d2644e9b80cec9a69bfa7e094" kindref="member">uInt16</ref><sp/>_type_code);</highlight></codeline> <codeline lineno="87"><highlight class="normal"><sp/><sp/><ref refid="structicmp__dur__hdr_17fc1a2c96daa015d5e9c8c5581149dbe" kindref="member">PACK_STRUCT_FIELD</ref>(<ref refid="types_8h_13b65128d2644e9b80cec9a69bfa7e094" kindref="member">uInt16</ref><sp/><ref refid="structicmp__dur__hdr_1da29ca70b725524f59ba969efed5c870" kindref="member">chksum</ref>);</highlight></codeline> <codeline lineno="88"><highlight class="normal"><sp/><sp/><ref refid="structicmp__dur__hdr_17fc1a2c96daa015d5e9c8c5581149dbe" kindref="member">PACK_STRUCT_FIELD</ref>(<ref refid="types_8h_15847ea0262a5aa61eee48cbe95544a78" kindref="member">uInt32</ref><sp/><ref refid="structicmp__dur__hdr_102d25a41e6438d64e6b858c40f4e3f4f" kindref="member">unused</ref>);</highlight></codeline> <codeline lineno="89"><highlight class="normal">}<sp/><ref refid="cc_8h_133623da05bb55497534c3dc26ebebeb2" kindref="member">PACK_STRUCT_STRUCT</ref>;</highlight></codeline> <codeline lineno="90"><highlight class="normal"></highlight></codeline> <codeline lineno="91" refid="structicmp__te__hdr" refkind="compound"><highlight class="normal"></highlight><highlight class="keyword">struct<sp/></highlight><highlight class="normal"><ref refid="structicmp__te__hdr" kindref="compound">icmp_te_hdr</ref><sp/>{</highlight></codeline> <codeline lineno="92"><highlight class="normal"><sp/><sp/><ref refid="structicmp__te__hdr_146d8bbce99ed85535e02dc6d18c3294a" kindref="member">PACK_STRUCT_FIELD</ref>(<ref refid="types_8h_13b65128d2644e9b80cec9a69bfa7e094" kindref="member">uInt16</ref><sp/>_type_code);</highlight></codeline> <codeline lineno="93"><highlight class="normal"><sp/><sp/><ref refid="structicmp__te__hdr_146d8bbce99ed85535e02dc6d18c3294a" kindref="member">PACK_STRUCT_FIELD</ref>(<ref refid="types_8h_13b65128d2644e9b80cec9a69bfa7e094" kindref="member">uInt16</ref><sp/><ref refid="structicmp__te__hdr_1fa9448daf9c3c077d49ade906c5ede64" kindref="member">chksum</ref>);</highlight></codeline> <codeline lineno="94"><highlight class="normal"><sp/><sp/><ref refid="structicmp__te__hdr_146d8bbce99ed85535e02dc6d18c3294a" kindref="member">PACK_STRUCT_FIELD</ref>(<ref refid="types_8h_15847ea0262a5aa61eee48cbe95544a78" kindref="member">uInt32</ref><sp/><ref refid="structicmp__te__hdr_1be6c4317f8e9bf39ec53546cc26f75ff" kindref="member">unused</ref>);</highlight></codeline> <codeline lineno="95"><highlight class="normal">}<sp/><ref refid="cc_8h_133623da05bb55497534c3dc26ebebeb2" kindref="member">PACK_STRUCT_STRUCT</ref>;</highlight></codeline> <codeline lineno="96"><highlight class="normal"></highlight></codeline> <codeline lineno="97" refid="ipv4_2icmp_8h_122fef4dade8b0b3b49651e2a2cb73c79" refkind="member"><highlight class="normal"></highlight><highlight class="preprocessor">#define<sp/>ICMPH_TYPE(hdr)<sp/>(NTOHS((hdr)->_type_code)<sp/>>><sp/>8)</highlight></codeline> <codeline lineno="98" refid="ipv4_2icmp_8h_1598231bf61f3b0e9f9a3117c385e0396" refkind="member"><highlight class="preprocessor"></highlight><highlight class="preprocessor">#define<sp/>ICMPH_CODE(hdr)<sp/>(NTOHS((hdr)->_type_code)<sp/>&<sp/>0xff)</highlight></codeline> <codeline lineno="99"><highlight class="preprocessor"></highlight><highlight class="normal"></highlight></codeline> <codeline lineno="100" refid="ipv4_2icmp_8h_105b6457f9d5d496aafebe97dccb61926" refkind="member"><highlight class="normal"></highlight><highlight class="preprocessor">#define<sp/>ICMPH_TYPE_SET(hdr,<sp/>type)<sp/>((hdr)->_type_code<sp/>=<sp/>HTONS(ICMPH_CODE(hdr)<sp/>|<sp/>((type)<sp/><<<sp/>8)))</highlight></codeline> <codeline lineno="101" refid="ipv4_2icmp_8h_1e69d6e0272aa0db81df1555c069cda34" refkind="member"><highlight class="preprocessor"></highlight><highlight class="preprocessor">#define<sp/>ICMPH_CODE_SET(hdr,<sp/>code)<sp/>((hdr)->_type_code<sp/>=<sp/>HTONS((code)<sp/>|<sp/>(ICMPH_TYPE(hdr)<sp/><<<sp/>8)))</highlight></codeline> <codeline lineno="102"><highlight class="preprocessor"></highlight><highlight class="normal"></highlight></codeline> <codeline lineno="103"><highlight class="normal"></highlight><highlight class="preprocessor">#endif<sp/></highlight><highlight class="comment">/*<sp/>__LWIP_ICMP_H__<sp/>*/</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="104"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight></codeline> </programlisting> <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/icmp.h"/> </compounddef> </doxygen>