<?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_2ip_8h" kind="file">
    <compoundname>ip.h</compoundname>
    <includes refid="arch_8h" local="yes">net/arch.h</includes>
    <includes refid="def_8h" local="yes">net/def.h</includes>
    <includes refid="pbuf_8h" local="yes">net/pbuf.h</includes>
    <includes refid="ipv4_2ip__addr_8h" local="yes">net/ipv4/ip_addr.h</includes>
    <includes refid="netif_8h" local="yes">net/netif.h</includes>
    <includes refid="err_8h" local="yes">net/err.h</includes>
    <includedby refid="api_8h" local="yes">src/sys/include/net/api.h</includedby>
    <includedby refid="api__msg_8h" local="yes">src/sys/include/net/api_msg.h</includedby>
    <includedby refid="tcp_8h" local="yes">src/sys/include/net/tcp.h</includedby>
    <includedby refid="udp_8h" local="yes">src/sys/include/net/udp.h</includedby>
    <includedby refid="tcpip_8c" local="yes">src/sys/net/api/tcpip.c</includedby>
    <includedby refid="arp_8c" local="yes">src/sys/net/netif/arp.c</includedby>
    <includedby refid="loopif_8c" local="yes">src/sys/net/netif/loopif.c</includedby>
    <includedby refid="tcpdump_8c" local="yes">src/sys/net/netif/tcpdump.c</includedby>
    <incdepgraph>
      <node id="730">
        <label>src/sys/include/net/ipv4/ip.h</label>
        <link refid="ipv4/ip.h"/>
        <childnode refid="731" relation="include">
        </childnode>
        <childnode refid="734" relation="include">
        </childnode>
        <childnode refid="736" relation="include">
        </childnode>
        <childnode refid="738" relation="include">
        </childnode>
        <childnode refid="739" relation="include">
        </childnode>
        <childnode refid="742" relation="include">
        </childnode>
      </node>
      <node id="735">
        <label>arch/lib.h</label>
        <link refid="lib_8h"/>
      </node>
      <node id="739">
        <label>net/netif.h</label>
        <link refid="netif_8h"/>
        <childnode refid="740" relation="include">
        </childnode>
        <childnode refid="742" relation="include">
        </childnode>
        <childnode refid="738" relation="include">
        </childnode>
        <childnode refid="745" relation="include">
        </childnode>
        <childnode refid="736" relation="include">
        </childnode>
      </node>
      <node id="732">
        <label>arch/cpu.h</label>
        <link refid="cpu_8h"/>
      </node>
      <node id="743">
        <label>ubixos/types.h</label>
        <link refid="types_8h"/>
        <childnode refid="744" relation="include">
        </childnode>
      </node>
      <node id="744">
        <label>sys/_types.h</label>
        <link refid="__types_8h"/>
      </node>
      <node id="731">
        <label>net/arch.h</label>
        <link refid="arch_8h"/>
        <childnode refid="732" relation="include">
        </childnode>
        <childnode refid="733" relation="include">
        </childnode>
      </node>
      <node id="741">
        <label>net/lwipopts.h</label>
        <link refid="lwipopts_8h"/>
      </node>
      <node id="734">
        <label>net/def.h</label>
        <link refid="def_8h"/>
        <childnode refid="735" relation="include">
        </childnode>
      </node>
      <node id="738">
        <label>net/ipv4/ip_addr.h</label>
        <link refid="ipv4_2ip__addr_8h"/>
        <childnode refid="731" relation="include">
        </childnode>
      </node>
      <node id="742">
        <label>net/err.h</label>
        <link refid="err_8h"/>
        <childnode refid="743" relation="include">
        </childnode>
        <childnode refid="737" relation="include">
        </childnode>
        <childnode refid="733" relation="include">
        </childnode>
      </node>
      <node id="740">
        <label>net/opt.h</label>
        <link refid="opt_8h"/>
        <childnode refid="741" relation="include">
        </childnode>
      </node>
      <node id="736">
        <label>net/pbuf.h</label>
        <link refid="pbuf_8h"/>
        <childnode refid="737" relation="include">
        </childnode>
        <childnode refid="731" relation="include">
        </childnode>
      </node>
      <node id="737">
        <label>net/debug.h</label>
        <link refid="debug_8h"/>
      </node>
      <node id="745">
        <label>net/ipv4/inet.h</label>
        <link refid="ipv4_2inet_8h"/>
        <childnode refid="731" relation="include">
        </childnode>
        <childnode refid="740" relation="include">
        </childnode>
        <childnode refid="736" relation="include">
        </childnode>
        <childnode refid="738" relation="include">
        </childnode>
      </node>
      <node id="733">
        <label>arch/cc.h</label>
        <link refid="cc_8h"/>
      </node>
    </incdepgraph>
    <invincdepgraph>
      <node id="757">
        <label>src/sys/net/net/udpecho.c</label>
        <link refid="udpecho_8c"/>
      </node>
      <node id="746">
        <label>src/sys/include/net/ipv4/ip.h</label>
        <link refid="ipv4/ip.h"/>
        <childnode refid="747" relation="include">
        </childnode>
        <childnode refid="748" relation="include">
        </childnode>
        <childnode refid="758" relation="include">
        </childnode>
        <childnode refid="761" relation="include">
        </childnode>
        <childnode refid="751" relation="include">
        </childnode>
        <childnode refid="762" relation="include">
        </childnode>
        <childnode refid="759" relation="include">
        </childnode>
        <childnode refid="760" relation="include">
        </childnode>
      </node>
      <node id="760">
        <label>src/sys/net/netif/tcpdump.c</label>
        <link refid="tcpdump_8c"/>
      </node>
      <node id="759">
        <label>src/sys/net/netif/loopif.c</label>
        <link refid="loopif_8c"/>
      </node>
      <node id="761">
        <label>src/sys/include/net/udp.h</label>
        <link refid="udp_8h"/>
        <childnode refid="747" relation="include">
        </childnode>
        <childnode refid="748" relation="include">
        </childnode>
        <childnode refid="751" relation="include">
        </childnode>
        <childnode refid="760" relation="include">
        </childnode>
      </node>
      <node id="758">
        <label>src/sys/include/net/tcp.h</label>
        <link refid="tcp_8h"/>
        <childnode refid="747" relation="include">
        </childnode>
        <childnode refid="748" relation="include">
        </childnode>
        <childnode refid="751" relation="include">
        </childnode>
        <childnode refid="759" relation="include">
        </childnode>
        <childnode refid="760" relation="include">
        </childnode>
      </node>
      <node id="762">
        <label>src/sys/net/netif/arp.c</label>
        <link refid="arp_8c"/>
      </node>
      <node id="755">
        <label>src/sys/net/net/bot.c</label>
        <link refid="bot_8c"/>
      </node>
      <node id="751">
        <label>src/sys/net/api/tcpip.c</label>
        <link refid="tcpip_8c"/>
      </node>
      <node id="749">
        <label>src/sys/include/net/tcpip.h</label>
        <link refid="tcpip_8h"/>
        <childnode refid="750" relation="include">
        </childnode>
        <childnode refid="751" relation="include">
        </childnode>
        <childnode refid="752" relation="include">
        </childnode>
      </node>
      <node id="748">
        <label>src/sys/include/net/api_msg.h</label>
        <link refid="api__msg_8h"/>
        <childnode refid="749" relation="include">
        </childnode>
        <childnode refid="753" relation="include">
        </childnode>
        <childnode refid="750" relation="include">
        </childnode>
      </node>
      <node id="756">
        <label>src/sys/net/net/shell.c</label>
        <link refid="shell_8c"/>
      </node>
      <node id="753">
        <label>src/sys/net/api/api_lib.c</label>
        <link refid="api__lib_8c"/>
      </node>
      <node id="752">
        <label>src/sys/net/net/init.c</label>
        <link refid="init_8c"/>
      </node>
      <node id="747">
        <label>src/sys/include/net/api.h</label>
        <link refid="api_8h"/>
        <childnode refid="748" relation="include">
        </childnode>
        <childnode refid="753" relation="include">
        </childnode>
        <childnode refid="754" relation="include">
        </childnode>
        <childnode refid="755" relation="include">
        </childnode>
        <childnode refid="756" relation="include">
        </childnode>
        <childnode refid="757" relation="include">
        </childnode>
      </node>
      <node id="754">
        <label>src/sys/net/api/sockets.c</label>
        <link refid="sockets_8c"/>
      </node>
      <node id="750">
        <label>src/sys/net/api/api_msg.c</label>
        <link refid="api__msg_8c"/>
      </node>
    </invincdepgraph>
    <innerclass refid="structip__hdr" prot="public">ip_hdr</innerclass>
      <sectiondef kind="define">
      <memberdef kind="define" id="ipv4_2ip_8h_1e2473f4a88d141d5298f92a4335b714a" prot="public" static="no">
        <name>IP_DF</name>
        <initializer>0x4000</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" line="82" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" bodystart="82" bodyend="-1"/>
      </memberdef>
      <memberdef kind="define" id="ipv4_2ip_8h_14c4294940df109ad673a7295b74259b0" prot="public" static="no">
        <name>IP_HDRINCL</name>
        <initializer>NULL</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" line="70" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" bodystart="70" bodyend="-1"/>
      </memberdef>
      <memberdef kind="define" id="ipv4_2ip_8h_1d76777d4d34f33ab5f715f9ca15503c3" prot="public" static="no">
        <name>IP_HLEN</name>
        <initializer>20</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" line="57" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" bodystart="57" bodyend="-1"/>
      </memberdef>
      <memberdef kind="define" id="ipv4_2ip_8h_1e8afe1e04bb9bad791443556c3b2cd73" prot="public" static="no">
        <name>IP_MF</name>
        <initializer>0x2000</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" line="83" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" bodystart="83" bodyend="-1"/>
      </memberdef>
      <memberdef kind="define" id="ipv4_2ip_8h_1d059798b16d1f615b5af8770175121ba" prot="public" static="no">
        <name>IP_OFFMASK</name>
        <initializer>0x1fff</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" line="84" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" bodystart="84" bodyend="-1"/>
      </memberdef>
      <memberdef kind="define" id="ipv4_2ip_8h_1acaea7b8c4c8a5229c02b653766b4793" prot="public" static="no">
        <name>IP_PROTO_ICMP</name>
        <initializer>1</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" line="59" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" bodystart="59" bodyend="-1"/>
      </memberdef>
      <memberdef kind="define" id="ipv4_2ip_8h_1634284ee3a136d6ad61bc5d917ebb82f" prot="public" static="no">
        <name>IP_PROTO_TCP</name>
        <initializer>6</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" line="62" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" bodystart="62" bodyend="-1"/>
      </memberdef>
      <memberdef kind="define" id="ipv4_2ip_8h_176212e7ef71a99646040d2e454388bed" prot="public" static="no">
        <name>IP_PROTO_UDP</name>
        <initializer>17</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" line="60" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" bodystart="60" bodyend="-1"/>
      </memberdef>
      <memberdef kind="define" id="ipv4_2ip_8h_13ef2b8a1cb4f7acee3142337438dfd0d" prot="public" static="no">
        <name>IP_PROTO_UDPLITE</name>
        <initializer>170</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" line="61" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" bodystart="61" bodyend="-1"/>
      </memberdef>
      <memberdef kind="define" id="ipv4_2ip_8h_1895709708f8f909cf7b7459491d549e7" prot="public" static="no">
        <name>IP_RF</name>
        <initializer>0x8000</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" line="81" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" bodystart="81" bodyend="-1"/>
      </memberdef>
      <memberdef kind="define" id="ipv4_2ip_8h_1773b96f54c75b35bcd24e7f857fcf988" prot="public" static="no">
        <name>IPH_CHKSUM</name>
        <param><defname>hdr</defname></param>
        <initializer>((hdr)-&gt;_chksum)</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" line="102" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" bodystart="102" bodyend="-1"/>
      </memberdef>
      <memberdef kind="define" id="ipv4_2ip_8h_1ec30403fb98b013bd094688de55cdaef" prot="public" static="no">
        <name>IPH_CHKSUM_SET</name>
        <param><defname>hdr</defname></param>
        <param><defname>chksum</defname></param>
        <initializer>(hdr)-&gt;_chksum = (chksum)</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" line="110" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" bodystart="110" bodyend="-1"/>
      </memberdef>
      <memberdef kind="define" id="ipv4_2ip_8h_17c60caeb708571a07a44309c10ec3a01" prot="public" static="no">
        <name>IPH_HL</name>
        <param><defname>hdr</defname></param>
        <initializer>((NTOHS((hdr)-&gt;_v_hl_tos) &gt;&gt; 8) &amp; 0x0f)</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" line="95" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" bodystart="95" bodyend="-1"/>
      </memberdef>
      <memberdef kind="define" id="ipv4_2ip_8h_1e79eaecc0bf9e4dbb9e47ea56ad2157a" prot="public" static="no">
        <name>IPH_ID</name>
        <param><defname>hdr</defname></param>
        <initializer>((hdr)-&gt;_id)</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" line="98" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" bodystart="98" bodyend="-1"/>
      </memberdef>
      <memberdef kind="define" id="ipv4_2ip_8h_13b2c57b6a9dc9cc32fc2f145a96bbf8f" prot="public" static="no">
        <name>IPH_ID_SET</name>
        <param><defname>hdr</defname></param>
        <param><defname>id</defname></param>
        <initializer>(hdr)-&gt;_id = (<ref refid="elf_8c_1ffd99ec09f321a630ec19d0333e291cd" kindref="member">id</ref>)</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" line="106" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" bodystart="106" bodyend="-1"/>
      </memberdef>
      <memberdef kind="define" id="ipv4_2ip_8h_1ec0328fe4711b8c1ef4dd6709e4fd6d5" prot="public" static="no">
        <name>IPH_LEN</name>
        <param><defname>hdr</defname></param>
        <initializer>((hdr)-&gt;_len)</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" line="97" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" bodystart="97" bodyend="-1"/>
      </memberdef>
      <memberdef kind="define" id="ipv4_2ip_8h_1069cb9b3765c4bdd63d13efb2df0206e" prot="public" static="no">
        <name>IPH_LEN_SET</name>
        <param><defname>hdr</defname></param>
        <param><defname>len</defname></param>
        <initializer>(hdr)-&gt;_len = (len)</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" line="105" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" bodystart="105" bodyend="-1"/>
      </memberdef>
      <memberdef kind="define" id="ipv4_2ip_8h_1559dce3878f1d6a46bcb4cb312962397" prot="public" static="no">
        <name>IPH_OFFSET</name>
        <param><defname>hdr</defname></param>
        <initializer>((hdr)-&gt;_offset)</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" line="99" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" bodystart="99" bodyend="-1"/>
      </memberdef>
      <memberdef kind="define" id="ipv4_2ip_8h_14c2189e1400dca1c0f785de96ceda2b6" prot="public" static="no">
        <name>IPH_OFFSET_SET</name>
        <param><defname>hdr</defname></param>
        <param><defname>off</defname></param>
        <initializer>(hdr)-&gt;_offset = (off)</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" line="107" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" bodystart="107" bodyend="-1"/>
      </memberdef>
      <memberdef kind="define" id="ipv4_2ip_8h_1a2de6f9d35337b4be67d799805665e11" prot="public" static="no">
        <name>IPH_PROTO</name>
        <param><defname>hdr</defname></param>
        <initializer>(NTOHS((hdr)-&gt;_ttl_proto) &amp; 0xff)</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" line="101" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" bodystart="101" bodyend="-1"/>
      </memberdef>
      <memberdef kind="define" id="ipv4_2ip_8h_149753f7668f741b1877340bff6fb97c3" prot="public" static="no">
        <name>IPH_PROTO_SET</name>
        <param><defname>hdr</defname></param>
        <param><defname>proto</defname></param>
        <initializer>(hdr)-&gt;_ttl_proto = HTONS((proto) | (IPH_TTL(hdr) &lt;&lt; 8))</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" line="109" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" bodystart="109" bodyend="-1"/>
      </memberdef>
      <memberdef kind="define" id="ipv4_2ip_8h_113fb5476ab97db9c5de6c1f5ca0d82e6" prot="public" static="no">
        <name>IPH_TOS</name>
        <param><defname>hdr</defname></param>
        <initializer>HTONS((NTOHS((hdr)-&gt;_v_hl_tos) &amp; 0xff))</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" line="96" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" bodystart="96" bodyend="-1"/>
      </memberdef>
      <memberdef kind="define" id="ipv4_2ip_8h_10d8238411ce35a007170f652e62209b3" prot="public" static="no">
        <name>IPH_TTL</name>
        <param><defname>hdr</defname></param>
        <initializer>(NTOHS((hdr)-&gt;_ttl_proto) &gt;&gt; 8)</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" line="100" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" bodystart="100" bodyend="-1"/>
      </memberdef>
      <memberdef kind="define" id="ipv4_2ip_8h_1a0e49f03bd4c3144e3548a0db72d1deb" prot="public" static="no">
        <name>IPH_TTL_SET</name>
        <param><defname>hdr</defname></param>
        <param><defname>ttl</defname></param>
        <initializer>(hdr)-&gt;_ttl_proto = HTONS(IPH_PROTO(hdr) | ((ttl) &lt;&lt; 8))</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" line="108" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" bodystart="108" bodyend="-1"/>
      </memberdef>
      <memberdef kind="define" id="ipv4_2ip_8h_105a9e8ecf4eff38244b4c13c7e70094c" prot="public" static="no">
        <name>IPH_V</name>
        <param><defname>hdr</defname></param>
        <initializer>(NTOHS((hdr)-&gt;_v_hl_tos) &gt;&gt; 12)</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" line="94" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" bodystart="94" bodyend="-1"/>
      </memberdef>
      <memberdef kind="define" id="ipv4_2ip_8h_165a5ff431603908b698b69ff5151f888" prot="public" static="no">
        <name>IPH_VHLTOS_SET</name>
        <param><defname>hdr</defname></param>
        <param><defname>v</defname></param>
        <param><defname>hl</defname></param>
        <param><defname>tos</defname></param>
        <initializer>(hdr)-&gt;_v_hl_tos = HTONS(((v) &lt;&lt; 12) | ((hl) &lt;&lt; 8) | (tos))</initializer>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" line="104" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" bodystart="104" bodyend="-1"/>
      </memberdef>
      </sectiondef>
      <sectiondef kind="func">
      <memberdef kind="function" id="ipv4_2ip_8h_18be0857c3bd133182ecd9e0dd700f7c7" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>void</type>
        <definition>void ip_init</definition>
        <argsstring>(void)</argsstring>
        <name>ip_init</name>
        <param>
          <type>void</type>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" line="47"/>
        <referencedby refid="tcpip_8c_161474ad2c2c25ba58cc774e2bcc4ef5f" compoundref="tcpip_8c" startline="68" endline="98">tcpip_thread</referencedby>
      </memberdef>
      <memberdef kind="function" id="ipv4_2ip_8h_13c420dab0c6760df099a2d688fa42a26" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="err_8h_1b7190f3da5c85931fc059e0312bc1407" kindref="member">err_t</ref></type>
        <definition>err_t ip_input</definition>
        <argsstring>(struct pbuf *p, struct netif *inp)</argsstring>
        <name>ip_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/ip.h" line="50"/>
        <referencedby refid="tcpip_8c_161474ad2c2c25ba58cc774e2bcc4ef5f" compoundref="tcpip_8c" startline="68" endline="98">tcpip_thread</referencedby>
      </memberdef>
      <memberdef kind="function" id="ipv4_2ip_8h_1b3e95b26f169c5d3ed21c88553052a3d" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="types_8h_1a4e0f27a9aca905e340c06d2dcae843c" kindref="member">uInt8</ref></type>
        <definition>uInt8 ip_lookup</definition>
        <argsstring>(void *header, struct netif *inp)</argsstring>
        <name>ip_lookup</name>
        <param>
          <type>void *</type>
          <declname>header</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/ip.h" line="48"/>
      </memberdef>
      <memberdef kind="function" id="ipv4_2ip_8h_1c360020282b7630ac9e9780e7a5bb758" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="err_8h_1b7190f3da5c85931fc059e0312bc1407" kindref="member">err_t</ref></type>
        <definition>err_t ip_output</definition>
        <argsstring>(struct pbuf *p, struct ip_addr *src, struct ip_addr *dest, uInt8 ttl, uInt8 proto)</argsstring>
        <name>ip_output</name>
        <param>
          <type>struct <ref refid="structpbuf" kindref="compound">pbuf</ref> *</type>
          <declname>p</declname>
        </param>
        <param>
          <type>struct <ref refid="structip__addr" kindref="compound">ip_addr</ref> *</type>
          <declname>src</declname>
        </param>
        <param>
          <type>struct <ref refid="structip__addr" kindref="compound">ip_addr</ref> *</type>
          <declname>dest</declname>
        </param>
        <param>
          <type><ref refid="types_8h_1a4e0f27a9aca905e340c06d2dcae843c" kindref="member">uInt8</ref></type>
          <declname>ttl</declname>
        </param>
        <param>
          <type><ref refid="types_8h_1a4e0f27a9aca905e340c06d2dcae843c" kindref="member">uInt8</ref></type>
          <declname>proto</declname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" line="52"/>
      </memberdef>
      <memberdef kind="function" id="ipv4_2ip_8h_1786ad4beeca101382b74feb53bd3b05d" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="err_8h_1b7190f3da5c85931fc059e0312bc1407" kindref="member">err_t</ref></type>
        <definition>err_t ip_output_if</definition>
        <argsstring>(struct pbuf *p, struct ip_addr *src, struct ip_addr *dest, uInt8 ttl, uInt8 proto, struct netif *netif)</argsstring>
        <name>ip_output_if</name>
        <param>
          <type>struct <ref refid="structpbuf" kindref="compound">pbuf</ref> *</type>
          <declname>p</declname>
        </param>
        <param>
          <type>struct <ref refid="structip__addr" kindref="compound">ip_addr</ref> *</type>
          <declname>src</declname>
        </param>
        <param>
          <type>struct <ref refid="structip__addr" kindref="compound">ip_addr</ref> *</type>
          <declname>dest</declname>
        </param>
        <param>
          <type><ref refid="types_8h_1a4e0f27a9aca905e340c06d2dcae843c" kindref="member">uInt8</ref></type>
          <declname>ttl</declname>
        </param>
        <param>
          <type><ref refid="types_8h_1a4e0f27a9aca905e340c06d2dcae843c" kindref="member">uInt8</ref></type>
          <declname>proto</declname>
        </param>
        <param>
          <type>struct <ref refid="structnetif" kindref="compound">netif</ref> *</type>
          <declname>netif</declname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" line="55"/>
      </memberdef>
      <memberdef kind="function" id="ipv4_2ip_8h_127aecc05841bdece5d6bed810cc0ce71" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="structnetif" kindref="compound">netif</ref> *</type>
        <definition>struct netif* ip_route</definition>
        <argsstring>(struct ip_addr *dest)</argsstring>
        <name>ip_route</name>
        <param>
          <type>struct <ref refid="structip__addr" kindref="compound">ip_addr</ref> *</type>
          <declname>dest</declname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h" line="49"/>
      </memberdef>
      </sectiondef>
      <sectiondef kind="var">
      <memberdef kind="variable" id="ipv4_2ip_8h_1cc2e6fec3924fc843f79b23e2562e2c6" prot="public" static="no" mutable="no">
        <type><ref refid="structip__hdr" kindref="compound">ip_hdr</ref></type>
        <definition>struct ip_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/ip.h" line="92"/>
      </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&apos;&apos;<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/>&lt;adam@sics.se&gt;</highlight></codeline>
<codeline lineno="32"><highlight class="comment"><sp/>*</highlight></codeline>
<codeline lineno="33"><highlight class="comment"><sp/>*<sp/>$Id: ipv4_2ip_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_IP_H__</highlight></codeline>
<codeline lineno="36"><highlight class="preprocessor"></highlight><highlight class="preprocessor">#define<sp/>__LWIP_IP_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/>&quot;<ref refid="arch_8h" kindref="compound">net/arch.h</ref>&quot;</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/>&quot;<ref refid="def_8h" kindref="compound">net/def.h</ref>&quot;</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="41"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/>&quot;<ref refid="pbuf_8h" kindref="compound">net/pbuf.h</ref>&quot;</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="42"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/>&quot;<ref refid="ipv4_2ip__addr_8h" kindref="compound">net/ipv4/ip_addr.h</ref>&quot;</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="43"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/>&quot;<ref refid="netif_8h" kindref="compound">net/netif.h</ref>&quot;</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="44"><highlight class="normal"></highlight></codeline>
<codeline lineno="45"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/>&quot;<ref refid="err_8h" kindref="compound">net/err.h</ref>&quot;</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="46"><highlight class="normal"></highlight></codeline>
<codeline lineno="47"><highlight class="normal"></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/><ref refid="ipv4_2ip_8h_18be0857c3bd133182ecd9e0dd700f7c7" kindref="member">ip_init</ref>(</highlight><highlight class="keywordtype">void</highlight><highlight class="normal">);</highlight></codeline>
<codeline lineno="48"><highlight class="normal"><ref refid="types_8h_1a4e0f27a9aca905e340c06d2dcae843c" kindref="member">uInt8</ref><sp/><ref refid="ipv4_2ip_8h_1b3e95b26f169c5d3ed21c88553052a3d" kindref="member">ip_lookup</ref>(</highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/>*header,<sp/></highlight><highlight class="keyword">struct</highlight><highlight class="normal"><sp/><ref refid="structnetif" kindref="compound">netif</ref><sp/>*inp);</highlight></codeline>
<codeline lineno="49"><highlight class="normal"></highlight><highlight class="keyword">struct<sp/></highlight><highlight class="normal"><ref refid="structnetif" kindref="compound">netif</ref><sp/>*<ref refid="ipv4_2ip_8h_127aecc05841bdece5d6bed810cc0ce71" kindref="member">ip_route</ref>(</highlight><highlight class="keyword">struct</highlight><highlight class="normal"><sp/><ref refid="structip__addr" kindref="compound">ip_addr</ref><sp/>*dest);</highlight></codeline>
<codeline lineno="50"><highlight class="normal"><ref refid="err_8h_1b7190f3da5c85931fc059e0312bc1407" kindref="member">err_t</ref><sp/><ref refid="ipv4_2ip_8h_13c420dab0c6760df099a2d688fa42a26" kindref="member">ip_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="51"><highlight class="normal"><ref refid="err_8h_1b7190f3da5c85931fc059e0312bc1407" kindref="member">err_t</ref><sp/><ref refid="ipv4_2ip_8h_1c360020282b7630ac9e9780e7a5bb758" kindref="member">ip_output</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="structip__addr" kindref="compound">ip_addr</ref><sp/>*src,<sp/></highlight><highlight class="keyword">struct</highlight><highlight class="normal"><sp/><ref refid="structip__addr" kindref="compound">ip_addr</ref><sp/>*dest,</highlight></codeline>
<codeline lineno="52"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><ref refid="types_8h_1a4e0f27a9aca905e340c06d2dcae843c" kindref="member">uInt8</ref><sp/>ttl,<sp/><ref refid="types_8h_1a4e0f27a9aca905e340c06d2dcae843c" kindref="member">uInt8</ref><sp/>proto);</highlight></codeline>
<codeline lineno="53"><highlight class="normal"><ref refid="err_8h_1b7190f3da5c85931fc059e0312bc1407" kindref="member">err_t</ref><sp/><ref refid="ipv4_2ip_8h_1786ad4beeca101382b74feb53bd3b05d" kindref="member">ip_output_if</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="structip__addr" kindref="compound">ip_addr</ref><sp/>*src,<sp/></highlight><highlight class="keyword">struct</highlight><highlight class="normal"><sp/><ref refid="structip__addr" kindref="compound">ip_addr</ref><sp/>*dest,</highlight></codeline>
<codeline lineno="54"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><ref refid="types_8h_1a4e0f27a9aca905e340c06d2dcae843c" kindref="member">uInt8</ref><sp/>ttl,<sp/><ref refid="types_8h_1a4e0f27a9aca905e340c06d2dcae843c" kindref="member">uInt8</ref><sp/>proto,</highlight></codeline>
<codeline lineno="55"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">struct</highlight><highlight class="normal"><sp/><ref refid="structnetif" kindref="compound">netif</ref><sp/>*<ref refid="structnetif" kindref="compound">netif</ref>);</highlight></codeline>
<codeline lineno="56"><highlight class="normal"></highlight></codeline>
<codeline lineno="57" refid="ipv4_2ip_8h_1d76777d4d34f33ab5f715f9ca15503c3" refkind="member"><highlight class="normal"></highlight><highlight class="preprocessor">#define<sp/>IP_HLEN<sp/>20</highlight></codeline>
<codeline lineno="58"><highlight class="preprocessor"></highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="59" refid="ipv4_2ip_8h_1acaea7b8c4c8a5229c02b653766b4793" refkind="member"><highlight class="normal"></highlight><highlight class="preprocessor">#define<sp/>IP_PROTO_ICMP<sp/>1</highlight></codeline>
<codeline lineno="60" refid="ipv4_2ip_8h_176212e7ef71a99646040d2e454388bed" refkind="member"><highlight class="preprocessor"></highlight><highlight class="preprocessor">#define<sp/>IP_PROTO_UDP<sp/>17</highlight></codeline>
<codeline lineno="61" refid="ipv4_2ip_8h_13ef2b8a1cb4f7acee3142337438dfd0d" refkind="member"><highlight class="preprocessor"></highlight><highlight class="preprocessor">#define<sp/>IP_PROTO_UDPLITE<sp/>170</highlight></codeline>
<codeline lineno="62" refid="ipv4_2ip_8h_1634284ee3a136d6ad61bc5d917ebb82f" refkind="member"><highlight class="preprocessor"></highlight><highlight class="preprocessor">#define<sp/>IP_PROTO_TCP<sp/>6</highlight></codeline>
<codeline lineno="63"><highlight class="preprocessor"></highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="64"><highlight class="normal"></highlight><highlight class="comment">/*<sp/>This<sp/>is<sp/>passed<sp/>as<sp/>the<sp/>destination<sp/>address<sp/>to<sp/>ip_output_if<sp/>(not</highlight></codeline>
<codeline lineno="65"><highlight class="comment"><sp/><sp/><sp/>to<sp/>ip_output),<sp/>meaning<sp/>that<sp/>an<sp/>IP<sp/>header<sp/>already<sp/>is<sp/>constructed</highlight></codeline>
<codeline lineno="66"><highlight class="comment"><sp/><sp/><sp/>in<sp/>the<sp/>pbuf.<sp/>This<sp/>is<sp/>used<sp/>when<sp/>TCP<sp/>retransmits.<sp/>*/</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="67"><highlight class="normal"></highlight><highlight class="preprocessor">#ifdef<sp/>IP_HDRINCL</highlight></codeline>
<codeline lineno="68"><highlight class="preprocessor"></highlight><highlight class="preprocessor">#undef<sp/>IP_HDRINCL</highlight></codeline>
<codeline lineno="69"><highlight class="preprocessor"></highlight><highlight class="preprocessor">#endif<sp/></highlight><highlight class="comment">/*<sp/>IP_HDRINCL<sp/>*/</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="70" refid="ipv4_2ip_8h_14c4294940df109ad673a7295b74259b0" refkind="member"><highlight class="normal"></highlight><highlight class="preprocessor">#define<sp/>IP_HDRINCL<sp/><sp/>NULL</highlight></codeline>
<codeline lineno="71"><highlight class="preprocessor"></highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="72" refid="structip__hdr" refkind="compound"><highlight class="normal"></highlight><highlight class="keyword">struct<sp/></highlight><highlight class="normal"><ref refid="structip__hdr" kindref="compound">ip_hdr</ref><sp/>{</highlight></codeline>
<codeline lineno="73"><highlight class="normal"><sp/><sp/></highlight><highlight class="comment">/*<sp/>version<sp/>/<sp/>header<sp/>length<sp/>/<sp/>type<sp/>of<sp/>service<sp/>*/</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="74"><highlight class="normal"><sp/><sp/><ref refid="structip__hdr_13fef89164693599490d3bfcd3faf25df" kindref="member">PACK_STRUCT_FIELD</ref>(<ref refid="types_8h_13b65128d2644e9b80cec9a69bfa7e094" kindref="member">uInt16</ref><sp/>_v_hl_tos);</highlight></codeline>
<codeline lineno="75"><highlight class="normal"><sp/><sp/></highlight><highlight class="comment">/*<sp/>total<sp/>length<sp/>*/</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="76"><highlight class="normal"><sp/><sp/><ref refid="structip__hdr_13fef89164693599490d3bfcd3faf25df" kindref="member">PACK_STRUCT_FIELD</ref>(<ref refid="types_8h_13b65128d2644e9b80cec9a69bfa7e094" kindref="member">uInt16</ref><sp/>_len);</highlight></codeline>
<codeline lineno="77"><highlight class="normal"><sp/><sp/></highlight><highlight class="comment">/*<sp/>identification<sp/>*/</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="78"><highlight class="normal"><sp/><sp/><ref refid="structip__hdr_13fef89164693599490d3bfcd3faf25df" kindref="member">PACK_STRUCT_FIELD</ref>(<ref refid="types_8h_13b65128d2644e9b80cec9a69bfa7e094" kindref="member">uInt16</ref><sp/>_id);</highlight></codeline>
<codeline lineno="79"><highlight class="normal"><sp/><sp/></highlight><highlight class="comment">/*<sp/>fragment<sp/>offset<sp/>field<sp/>*/</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="80"><highlight class="normal"><sp/><sp/><ref refid="structip__hdr_13fef89164693599490d3bfcd3faf25df" kindref="member">PACK_STRUCT_FIELD</ref>(<ref refid="types_8h_13b65128d2644e9b80cec9a69bfa7e094" kindref="member">uInt16</ref><sp/>_offset);</highlight></codeline>
<codeline lineno="81" refid="ipv4_2ip_8h_1895709708f8f909cf7b7459491d549e7" refkind="member"><highlight class="normal"></highlight><highlight class="preprocessor">#define<sp/>IP_RF<sp/>0x8000<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="comment">/*<sp/>reserved<sp/>fragment<sp/>flag<sp/>*/</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="82" refid="ipv4_2ip_8h_1e2473f4a88d141d5298f92a4335b714a" refkind="member"><highlight class="normal"></highlight><highlight class="preprocessor">#define<sp/>IP_DF<sp/>0x4000<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="comment">/*<sp/>dont<sp/>fragment<sp/>flag<sp/>*/</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="83" refid="ipv4_2ip_8h_1e8afe1e04bb9bad791443556c3b2cd73" refkind="member"><highlight class="normal"></highlight><highlight class="preprocessor">#define<sp/>IP_MF<sp/>0x2000<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="comment">/*<sp/>more<sp/>fragments<sp/>flag<sp/>*/</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="84" refid="ipv4_2ip_8h_1d059798b16d1f615b5af8770175121ba" refkind="member"><highlight class="normal"></highlight><highlight class="preprocessor">#define<sp/>IP_OFFMASK<sp/>0x1fff<sp/><sp/><sp/></highlight><highlight class="comment">/*<sp/>mask<sp/>for<sp/>fragmenting<sp/>bits<sp/>*/</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="85"><highlight class="normal"><sp/><sp/></highlight><highlight class="comment">/*<sp/>time<sp/>to<sp/>live<sp/>/<sp/>protocol*/</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="86"><highlight class="normal"><sp/><sp/><ref refid="structip__hdr_13fef89164693599490d3bfcd3faf25df" kindref="member">PACK_STRUCT_FIELD</ref>(<ref refid="types_8h_13b65128d2644e9b80cec9a69bfa7e094" kindref="member">uInt16</ref><sp/>_ttl_proto);</highlight></codeline>
<codeline lineno="87"><highlight class="normal"><sp/><sp/></highlight><highlight class="comment">/*<sp/>checksum<sp/>*/</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="88"><highlight class="normal"><sp/><sp/><ref refid="structip__hdr_13fef89164693599490d3bfcd3faf25df" kindref="member">PACK_STRUCT_FIELD</ref>(<ref refid="types_8h_13b65128d2644e9b80cec9a69bfa7e094" kindref="member">uInt16</ref><sp/>_chksum);</highlight></codeline>
<codeline lineno="89"><highlight class="normal"><sp/><sp/></highlight><highlight class="comment">/*<sp/>source<sp/>and<sp/>destination<sp/>IP<sp/>addresses<sp/>*/</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="90"><highlight class="normal"><sp/><sp/><ref refid="structip__hdr_13fef89164693599490d3bfcd3faf25df" kindref="member">PACK_STRUCT_FIELD</ref>(</highlight><highlight class="keyword">struct</highlight><highlight class="normal"><sp/><ref refid="structip__addr" kindref="compound">ip_addr</ref><sp/>src);</highlight></codeline>
<codeline lineno="91"><highlight class="normal"><sp/><sp/><ref refid="structip__hdr_13fef89164693599490d3bfcd3faf25df" kindref="member">PACK_STRUCT_FIELD</ref>(</highlight><highlight class="keyword">struct</highlight><highlight class="normal"><sp/><ref refid="structip__addr" kindref="compound">ip_addr</ref><sp/><ref refid="structip__hdr_1815e233e57dabbb88731c7454498286c" kindref="member">dest</ref>);<sp/></highlight></codeline>
<codeline lineno="92"><highlight class="normal">}<sp/><ref refid="cc_8h_133623da05bb55497534c3dc26ebebeb2" kindref="member">PACK_STRUCT_STRUCT</ref>;</highlight></codeline>
<codeline lineno="93"><highlight class="normal"></highlight></codeline>
<codeline lineno="94" refid="ipv4_2ip_8h_105a9e8ecf4eff38244b4c13c7e70094c" refkind="member"><highlight class="normal"></highlight><highlight class="preprocessor">#define<sp/>IPH_V(hdr)<sp/><sp/>(NTOHS((hdr)-&gt;_v_hl_tos)<sp/>&gt;&gt;<sp/>12)</highlight></codeline>
<codeline lineno="95" refid="ipv4_2ip_8h_17c60caeb708571a07a44309c10ec3a01" refkind="member"><highlight class="preprocessor"></highlight><highlight class="preprocessor">#define<sp/>IPH_HL(hdr)<sp/>((NTOHS((hdr)-&gt;_v_hl_tos)<sp/>&gt;&gt;<sp/>8)<sp/>&amp;<sp/>0x0f)</highlight></codeline>
<codeline lineno="96" refid="ipv4_2ip_8h_113fb5476ab97db9c5de6c1f5ca0d82e6" refkind="member"><highlight class="preprocessor"></highlight><highlight class="preprocessor">#define<sp/>IPH_TOS(hdr)<sp/>HTONS((NTOHS((hdr)-&gt;_v_hl_tos)<sp/>&amp;<sp/>0xff))</highlight></codeline>
<codeline lineno="97" refid="ipv4_2ip_8h_1ec0328fe4711b8c1ef4dd6709e4fd6d5" refkind="member"><highlight class="preprocessor"></highlight><highlight class="preprocessor">#define<sp/>IPH_LEN(hdr)<sp/>((hdr)-&gt;_len)</highlight></codeline>
<codeline lineno="98" refid="ipv4_2ip_8h_1e79eaecc0bf9e4dbb9e47ea56ad2157a" refkind="member"><highlight class="preprocessor"></highlight><highlight class="preprocessor">#define<sp/>IPH_ID(hdr)<sp/>((hdr)-&gt;_id)</highlight></codeline>
<codeline lineno="99" refid="ipv4_2ip_8h_1559dce3878f1d6a46bcb4cb312962397" refkind="member"><highlight class="preprocessor"></highlight><highlight class="preprocessor">#define<sp/>IPH_OFFSET(hdr)<sp/>((hdr)-&gt;_offset)</highlight></codeline>
<codeline lineno="100" refid="ipv4_2ip_8h_10d8238411ce35a007170f652e62209b3" refkind="member"><highlight class="preprocessor"></highlight><highlight class="preprocessor">#define<sp/>IPH_TTL(hdr)<sp/>(NTOHS((hdr)-&gt;_ttl_proto)<sp/>&gt;&gt;<sp/>8)</highlight></codeline>
<codeline lineno="101" refid="ipv4_2ip_8h_1a2de6f9d35337b4be67d799805665e11" refkind="member"><highlight class="preprocessor"></highlight><highlight class="preprocessor">#define<sp/>IPH_PROTO(hdr)<sp/>(NTOHS((hdr)-&gt;_ttl_proto)<sp/>&amp;<sp/>0xff)</highlight></codeline>
<codeline lineno="102" refid="ipv4_2ip_8h_1773b96f54c75b35bcd24e7f857fcf988" refkind="member"><highlight class="preprocessor"></highlight><highlight class="preprocessor">#define<sp/>IPH_CHKSUM(hdr)<sp/>((hdr)-&gt;_chksum)</highlight></codeline>
<codeline lineno="103"><highlight class="preprocessor"></highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="104" refid="ipv4_2ip_8h_165a5ff431603908b698b69ff5151f888" refkind="member"><highlight class="normal"></highlight><highlight class="preprocessor">#define<sp/>IPH_VHLTOS_SET(hdr,<sp/>v,<sp/>hl,<sp/>tos)<sp/>(hdr)-&gt;_v_hl_tos<sp/>=<sp/>HTONS(((v)<sp/>&lt;&lt;<sp/>12)<sp/>|<sp/>((hl)<sp/>&lt;&lt;<sp/>8)<sp/>|<sp/>(tos))</highlight></codeline>
<codeline lineno="105" refid="ipv4_2ip_8h_1069cb9b3765c4bdd63d13efb2df0206e" refkind="member"><highlight class="preprocessor"></highlight><highlight class="preprocessor">#define<sp/>IPH_LEN_SET(hdr,<sp/>len)<sp/>(hdr)-&gt;_len<sp/>=<sp/>(len)</highlight></codeline>
<codeline lineno="106" refid="ipv4_2ip_8h_13b2c57b6a9dc9cc32fc2f145a96bbf8f" refkind="member"><highlight class="preprocessor"></highlight><highlight class="preprocessor">#define<sp/>IPH_ID_SET(hdr,<sp/>id)<sp/>(hdr)-&gt;_id<sp/>=<sp/>(id)</highlight></codeline>
<codeline lineno="107" refid="ipv4_2ip_8h_14c2189e1400dca1c0f785de96ceda2b6" refkind="member"><highlight class="preprocessor"></highlight><highlight class="preprocessor">#define<sp/>IPH_OFFSET_SET(hdr,<sp/>off)<sp/>(hdr)-&gt;_offset<sp/>=<sp/>(off)</highlight></codeline>
<codeline lineno="108" refid="ipv4_2ip_8h_1a0e49f03bd4c3144e3548a0db72d1deb" refkind="member"><highlight class="preprocessor"></highlight><highlight class="preprocessor">#define<sp/>IPH_TTL_SET(hdr,<sp/>ttl)<sp/>(hdr)-&gt;_ttl_proto<sp/>=<sp/>HTONS(IPH_PROTO(hdr)<sp/>|<sp/>((ttl)<sp/>&lt;&lt;<sp/>8))</highlight></codeline>
<codeline lineno="109" refid="ipv4_2ip_8h_149753f7668f741b1877340bff6fb97c3" refkind="member"><highlight class="preprocessor"></highlight><highlight class="preprocessor">#define<sp/>IPH_PROTO_SET(hdr,<sp/>proto)<sp/>(hdr)-&gt;_ttl_proto<sp/>=<sp/>HTONS((proto)<sp/>|<sp/>(IPH_TTL(hdr)<sp/>&lt;&lt;<sp/>8))</highlight></codeline>
<codeline lineno="110" refid="ipv4_2ip_8h_1ec30403fb98b013bd094688de55cdaef" refkind="member"><highlight class="preprocessor"></highlight><highlight class="preprocessor">#define<sp/>IPH_CHKSUM_SET(hdr,<sp/>chksum)<sp/>(hdr)-&gt;_chksum<sp/>=<sp/>(chksum)</highlight></codeline>
<codeline lineno="111"><highlight class="preprocessor"></highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="112"><highlight class="normal"></highlight></codeline>
<codeline lineno="113"><highlight class="normal"></highlight></codeline>
<codeline lineno="114"><highlight class="normal"></highlight><highlight class="preprocessor">#if<sp/>IP_DEBUG</highlight></codeline>
<codeline lineno="115"><highlight class="preprocessor"></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/>ip_debug_print(</highlight><highlight class="keyword">struct</highlight><highlight class="normal"><sp/><ref refid="structpbuf" kindref="compound">pbuf</ref><sp/>*p);</highlight></codeline>
<codeline lineno="116"><highlight class="normal"></highlight><highlight class="preprocessor">#endif<sp/></highlight><highlight class="comment">/*<sp/>IP_DEBUG<sp/>*/</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="117"><highlight class="normal"></highlight></codeline>
<codeline lineno="118"><highlight class="normal"></highlight><highlight class="preprocessor">#endif<sp/></highlight><highlight class="comment">/*<sp/>__LWIP_IP_H__<sp/>*/</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="119"><highlight class="normal"></highlight></codeline>
<codeline lineno="120"><highlight class="normal"></highlight></codeline>
    </programlisting>
    <location file="/usr/home/reddawg/source/ubix2/src/sys/include/net/ipv4/ip.h"/>
  </compounddef>
</doxygen>
