<?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)->_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)->_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)->_v_hl_tos) >> 8) & 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)->_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)->_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)->_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)->_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)->_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)->_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)->_ttl_proto) & 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)->_ttl_proto = HTONS((proto) | (IPH_TTL(hdr) << 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)->_v_hl_tos) & 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)->_ttl_proto) >> 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)->_ttl_proto = HTONS(IPH_PROTO(hdr) | ((ttl) << 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)->_v_hl_tos) >> 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)->_v_hl_tos = HTONS(((v) << 12) | ((hl) << 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''<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_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/>"<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="def_8h" kindref="compound">net/def.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><highlight class="preprocessor">#include<sp/>"<ref refid="ipv4_2ip__addr_8h" kindref="compound">net/ipv4/ip_addr.h</ref>"</highlight><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"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/>"<ref refid="err_8h" kindref="compound">net/err.h</ref>"</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)->_v_hl_tos)<sp/>>><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)->_v_hl_tos)<sp/>>><sp/>8)<sp/>&<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)->_v_hl_tos)<sp/>&<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)->_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)->_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)->_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)->_ttl_proto)<sp/>>><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)->_ttl_proto)<sp/>&<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)->_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)->_v_hl_tos<sp/>=<sp/>HTONS(((v)<sp/><<<sp/>12)<sp/>|<sp/>((hl)<sp/><<<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)->_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)->_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)->_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)->_ttl_proto<sp/>=<sp/>HTONS(IPH_PROTO(hdr)<sp/>|<sp/>((ttl)<sp/><<<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)->_ttl_proto<sp/>=<sp/>HTONS((proto)<sp/>|<sp/>(IPH_TTL(hdr)<sp/><<<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)->_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>