<?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="tcpip_8c" kind="file"> <compoundname>tcpip.c</compoundname> <includes refid="exec_8h" local="no">ubixos/exec.h</includes> <includes refid="kmalloc_8h" local="no">lib/kmalloc.h</includes> <includes refid="debug_8h" local="yes">net/debug.h</includes> <includes refid="opt_8h" local="yes">net/opt.h</includes> <includes refid="sys_8h" local="yes">net/sys.h</includes> <includes refid="memp_8h" local="yes">net/memp.h</includes> <includes refid="pbuf_8h" local="yes">net/pbuf.h</includes> <includes refid="ipv4_2ip_8h" local="yes">net/ipv4/ip.h</includes> <includes refid="udp_8h" local="yes">net/udp.h</includes> <includes refid="tcp_8h" local="yes">net/tcp.h</includes> <includes refid="tcpip_8h" local="yes">net/tcpip.h</includes> <incdepgraph> <node id="3913"> <label>sys/thread.h</label> <link refid="thread_8h"/> <childnode refid="3902" relation="include"> </childnode> </node> <node id="3926"> <label>net/ipv4/ip.h</label> <link refid="ipv4_2ip_8h"/> <childnode refid="3924" relation="include"> </childnode> <childnode refid="3927" relation="include"> </childnode> <childnode refid="3923" relation="include"> </childnode> <childnode refid="3929" relation="include"> </childnode> <childnode refid="3930" relation="include"> </childnode> <childnode refid="3931" relation="include"> </childnode> </node> <node id="3928"> <label>arch/lib.h</label> <link refid="lib_8h"/> </node> <node id="3904"> <label>ubixos/sched.h</label> <link refid="sched_8h"/> <childnode refid="3902" relation="include"> </childnode> <childnode refid="3905" relation="include"> </childnode> <childnode refid="3906" relation="include"> </childnode> <childnode refid="3907" relation="include"> </childnode> <childnode refid="3914" relation="include"> </childnode> <childnode refid="3913" relation="include"> </childnode> </node> <node id="3930"> <label>net/netif.h</label> <link refid="netif_8h"/> <childnode refid="3917" relation="include"> </childnode> <childnode refid="3931" relation="include"> </childnode> <childnode refid="3929" relation="include"> </childnode> <childnode refid="3932" relation="include"> </childnode> <childnode refid="3923" relation="include"> </childnode> </node> <node id="3933"> <label>net/udp.h</label> <link refid="udp_8h"/> <childnode refid="3924" relation="include"> </childnode> <childnode refid="3923" relation="include"> </childnode> <childnode refid="3932" relation="include"> </childnode> <childnode refid="3926" relation="include"> </childnode> <childnode refid="3931" relation="include"> </childnode> </node> <node id="3925"> <label>arch/cpu.h</label> <link refid="cpu_8h"/> </node> <node id="3921"> <label>arch/sys_arch.h</label> <link refid="sys__arch_8h"/> </node> <node id="3934"> <label>net/tcp.h</label> <link refid="tcp_8h"/> <childnode refid="3919" relation="include"> </childnode> <childnode refid="3935" relation="include"> </childnode> <childnode refid="3923" relation="include"> </childnode> <childnode refid="3917" relation="include"> </childnode> <childnode refid="3926" relation="include"> </childnode> <childnode refid="3936" relation="include"> </childnode> <childnode refid="3931" relation="include"> </childnode> </node> <node id="3902"> <label>ubixos/types.h</label> <link refid="types_8h"/> <childnode refid="3903" relation="include"> </childnode> </node> <node id="3903"> <label>sys/_types.h</label> <link refid="__types_8h"/> </node> <node id="3924"> <label>net/arch.h</label> <link refid="arch_8h"/> <childnode refid="3925" relation="include"> </childnode> <childnode refid="3920" relation="include"> </childnode> </node> <node id="3936"> <label>net/ipv4/icmp.h</label> <link refid="ipv4_2icmp_8h"/> <childnode refid="3924" relation="include"> </childnode> <childnode refid="3917" relation="include"> </childnode> <childnode refid="3923" relation="include"> </childnode> <childnode refid="3930" relation="include"> </childnode> </node> <node id="3907"> <label>vfs/file.h</label> <link refid="file_8h"/> <childnode refid="3902" relation="include"> </childnode> <childnode refid="3908" relation="include"> </childnode> <childnode refid="3909" relation="include"> </childnode> </node> <node id="3914"> <label>sys/tss.h</label> <link refid="tss_8h"/> <childnode refid="3902" relation="include"> </childnode> </node> <node id="3915"> <label>lib/kmalloc.h</label> <link refid="kmalloc_8h"/> <childnode refid="3902" relation="include"> </childnode> </node> <node id="3900"> <label>src/sys/net/api/tcpip.c</label> <link refid="tcpip.c"/> <childnode refid="3901" relation="include"> </childnode> <childnode refid="3915" relation="include"> </childnode> <childnode refid="3916" relation="include"> </childnode> <childnode refid="3917" relation="include"> </childnode> <childnode refid="3919" relation="include"> </childnode> <childnode refid="3922" relation="include"> </childnode> <childnode refid="3923" relation="include"> </childnode> <childnode refid="3926" relation="include"> </childnode> <childnode refid="3933" relation="include"> </childnode> <childnode refid="3934" relation="include"> </childnode> <childnode refid="3937" relation="include"> </childnode> </node> <node id="3918"> <label>net/lwipopts.h</label> <link refid="lwipopts_8h"/> </node> <node id="3937"> <label>net/tcpip.h</label> <link refid="tcpip_8h"/> <childnode refid="3938" relation="include"> </childnode> <childnode refid="3923" relation="include"> </childnode> </node> <node id="3938"> <label>net/api_msg.h</label> <link refid="api__msg_8h"/> <childnode refid="3917" relation="include"> </childnode> <childnode refid="3923" relation="include"> </childnode> <childnode refid="3919" relation="include"> </childnode> <childnode refid="3926" relation="include"> </childnode> <childnode refid="3933" relation="include"> </childnode> <childnode refid="3934" relation="include"> </childnode> <childnode refid="3939" relation="include"> </childnode> </node> <node id="3927"> <label>net/def.h</label> <link refid="def_8h"/> <childnode refid="3928" relation="include"> </childnode> </node> <node id="3935"> <label>net/mem.h</label> <link refid="mem_8h"/> <childnode refid="3902" relation="include"> </childnode> <childnode refid="3916" relation="include"> </childnode> <childnode refid="3917" relation="include"> </childnode> <childnode refid="3924" relation="include"> </childnode> </node> <node id="3922"> <label>net/memp.h</label> <link refid="memp_8h"/> <childnode refid="3902" relation="include"> </childnode> <childnode refid="3916" relation="include"> </childnode> <childnode refid="3920" relation="include"> </childnode> <childnode refid="3918" relation="include"> </childnode> </node> <node id="3910"> <label>vfs/vfs.h</label> <link refid="vfs_8h"/> <childnode refid="3902" relation="include"> </childnode> <childnode refid="3907" relation="include"> </childnode> <childnode refid="3909" relation="include"> </childnode> <childnode refid="3911" relation="include"> </childnode> <childnode refid="3913" relation="include"> </childnode> </node> <node id="3909"> <label>vfs/mount.h</label> <link refid="mount_8h"/> <childnode refid="3902" relation="include"> </childnode> <childnode refid="3910" relation="include"> </childnode> </node> <node id="3929"> <label>net/ipv4/ip_addr.h</label> <link refid="ipv4_2ip__addr_8h"/> <childnode refid="3924" relation="include"> </childnode> </node> <node id="3931"> <label>net/err.h</label> <link refid="err_8h"/> <childnode refid="3902" relation="include"> </childnode> <childnode refid="3916" relation="include"> </childnode> <childnode refid="3920" relation="include"> </childnode> </node> <node id="3939"> <label>net/api.h</label> <link refid="api_8h"/> <childnode refid="3917" relation="include"> </childnode> <childnode refid="3923" relation="include"> </childnode> <childnode refid="3919" relation="include"> </childnode> <childnode refid="3926" relation="include"> </childnode> <childnode refid="3933" relation="include"> </childnode> <childnode refid="3934" relation="include"> </childnode> <childnode refid="3931" relation="include"> </childnode> </node> <node id="3908"> <label>ubixfs/dirCache.h</label> <link refid="dirCache_8h"/> <childnode refid="3902" relation="include"> </childnode> </node> <node id="3901"> <label>ubixos/exec.h</label> <link refid="exec_8h"/> <childnode refid="3902" relation="include"> </childnode> <childnode refid="3904" relation="include"> </childnode> </node> <node id="3917"> <label>net/opt.h</label> <link refid="opt_8h"/> <childnode refid="3918" relation="include"> </childnode> </node> <node id="3911"> <label>sys/sysproto.h</label> <link refid="sysproto_8h"/> <childnode refid="3912" relation="include"> </childnode> <childnode refid="3913" relation="include"> </childnode> </node> <node id="3905"> <label>ubixos/elf.h</label> <link refid="elf_8h"/> <childnode refid="3902" relation="include"> </childnode> </node> <node id="3912"> <label>sys/signal.h</label> <link refid="signal_8h"/> <childnode refid="3902" relation="include"> </childnode> </node> <node id="3919"> <label>net/sys.h</label> <link refid="sys_8h"/> <childnode refid="3920" relation="include"> </childnode> <childnode refid="3921" relation="include"> </childnode> </node> <node id="3906"> <label>ubixos/tty.h</label> <link refid="tty_8h"/> <childnode refid="3902" relation="include"> </childnode> </node> <node id="3923"> <label>net/pbuf.h</label> <link refid="pbuf_8h"/> <childnode refid="3916" relation="include"> </childnode> <childnode refid="3924" relation="include"> </childnode> </node> <node id="3916"> <label>net/debug.h</label> <link refid="debug_8h"/> </node> <node id="3932"> <label>net/ipv4/inet.h</label> <link refid="ipv4_2inet_8h"/> <childnode refid="3924" relation="include"> </childnode> <childnode refid="3917" relation="include"> </childnode> <childnode refid="3923" relation="include"> </childnode> <childnode refid="3929" relation="include"> </childnode> </node> <node id="3920"> <label>arch/cc.h</label> <link refid="cc_8h"/> </node> </incdepgraph> <sectiondef kind="func"> <memberdef kind="function" id="tcpip_8c_1d72ca05f74e20244cd26a8828711e9f2" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual"> <type>void</type> <definition>void tcpip_apimsg</definition> <argsstring>(struct api_msg *apimsg)</argsstring> <name>tcpip_apimsg</name> <param> <type>struct <ref refid="structapi__msg" kindref="compound">api_msg</ref> *</type> <declname>apimsg</declname> </param> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> <inbodydescription> </inbodydescription> <location file="/usr/home/reddawg/source/ubix2/src/sys/net/api/tcpip.c" line="122" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/net/api/tcpip.c" bodystart="121" bodyend="132"/> <references refid="structtcpip__msg_10725900e18ae1dc3f2d3c09f9fc7ba98" compoundref="tcpip_8h" startline="54">tcpip_msg::apimsg</references> <references refid="tcpip_8c_1189da3fa172ad9c1b0491dcb4857fee6" compoundref="tcpip_8c" startline="56">mbox</references> <references refid="memp_8h_1ecd94926b7c2a0e23ae195f4ae97581f">memp_free</references> <references refid="memp_8h_18fd5bd978dc56399e1649381cc2a1aeb">memp_mallocp</references> <references refid="memp_8h_185a164b1f7764951cc685ea525114e57110e78608e5acf1cf15cb442dfffd84f">MEMP_TCPIP_MSG</references> <references refid="structtcpip__msg_138c897bf24dd203fd685fd8233329352">tcpip_msg::msg</references> <references refid="def_8h_1070d2ce7b6bb7e5c05602aa8c308d0c4" compoundref="def_8h" startline="41">NULL</references> <references refid="sys_8h_1217a9af37c5dd7c3fc16daddaacb976f">sys_mbox_post</references> <references refid="tcpip_8h_11e0cb5032a61055e3f4a3426ed5489378665d0f2f1498c366e90d67a1e4c7f80">TCPIP_MSG_API</references> <referencedby refid="api__msg_8c_1ee039fae0c665f1372f4a3ff8395ffeb" compoundref="api__msg_8c" startline="523" endline="526">api_msg_post</referencedby> </memberdef> <memberdef kind="function" id="tcpip_8c_1aa3df02b3de2b41fe4bf7b2194e5e8e0" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual"> <type>void</type> <definition>void tcpip_init</definition> <argsstring>(void(*initfunc)(void *), void *arg)</argsstring> <name>tcpip_init</name> <param> <type>void(*)(void *)</type> <declname>initfunc</declname> </param> <param> <type>void *</type> <declname>arg</declname> </param> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> <inbodydescription> </inbodydescription> <location file="/usr/home/reddawg/source/ubix2/src/sys/net/api/tcpip.c" line="136" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/net/api/tcpip.c" bodystart="135" bodyend="141"/> <references refid="tcpip_8c_1189da3fa172ad9c1b0491dcb4857fee6" compoundref="tcpip_8c" startline="56">mbox</references> <references refid="def_8h_1070d2ce7b6bb7e5c05602aa8c308d0c4" compoundref="def_8h" startline="41">NULL</references> <references refid="sys_8h_13b766e6df37d63d5f1144c5089c2af94" compoundref="sys__arch_8c" startline="204" endline="213">sys_mbox_new</references> <references refid="sys_8h_1eb9b7d7cea295be85b0b0ddb7c9fe566" compoundref="sys__arch_8c" startline="172" endline="202">sys_thread_new</references> <references refid="tcpip_8c_1696c6d03effd7dbc7615f2b7758b3ce2" compoundref="tcpip_8c" startline="54">tcpip_init_done</references> <references refid="tcpip_8c_1f3f9b0102b8b4f5a674034f5421ef918" compoundref="tcpip_8c" startline="55">tcpip_init_done_arg</references> <references refid="tcpip_8c_161474ad2c2c25ba58cc774e2bcc4ef5f" compoundref="tcpip_8c" startline="68" endline="98">tcpip_thread</references> <referencedby refid="init_8c_1ced8bfa512e574c34b87586a3de7a94a" compoundref="init_8c" startline="66" endline="92">netMainThread</referencedby> </memberdef> <memberdef kind="function" id="tcpip_8c_1e510f195171bed8499ae94e264a92717" 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 tcpip_input</definition> <argsstring>(struct pbuf *p, struct netif *inp)</argsstring> <name>tcpip_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/net/api/tcpip.c" line="102" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/net/api/tcpip.c" bodystart="101" bodyend="118"/> <references refid="err_8h_16ab63185cc5dff3c50c61d99bdf98369" compoundref="err_8h" startline="49">ERR_MEM</references> <references refid="err_8h_198c763adfeea8e9831c46ec269e47ae9" compoundref="err_8h" startline="48">ERR_OK</references> <references refid="structtcpip__msg_173fb4cc463db05b4ba1fe3219497969d">tcpip_msg::inp</references> <references refid="tcpip_8c_1189da3fa172ad9c1b0491dcb4857fee6" compoundref="tcpip_8c" startline="56">mbox</references> <references refid="memp_8h_18fd5bd978dc56399e1649381cc2a1aeb">memp_mallocp</references> <references refid="memp_8h_185a164b1f7764951cc685ea525114e57110e78608e5acf1cf15cb442dfffd84f">MEMP_TCPIP_MSG</references> <references refid="structtcpip__msg_138c897bf24dd203fd685fd8233329352">tcpip_msg::msg</references> <references refid="def_8h_1070d2ce7b6bb7e5c05602aa8c308d0c4" compoundref="def_8h" startline="41">NULL</references> <references refid="structtcpip__msg_19298bc5d6d92c5efd478dac92c09459b" compoundref="tcpip_8h" startline="56">tcpip_msg::p</references> <references refid="pbuf_8h_1334112aa2ac402c254d604c0dbbbb746">pbuf_free</references> <references refid="sys_8h_1217a9af37c5dd7c3fc16daddaacb976f">sys_mbox_post</references> <references refid="tcpip_8h_11e0cb5032a61055e3f4a3426ed548937c4e5735b0b02d605e97466bec94cdf71">TCPIP_MSG_INPUT</references> <referencedby refid="init_8c_1ced8bfa512e574c34b87586a3de7a94a" compoundref="init_8c" startline="66" endline="92">netMainThread</referencedby> </memberdef> <memberdef kind="function" id="tcpip_8c_137e1880ffdc8a50daa4e9876bc894a8f" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual"> <type>void</type> <definition>static void tcpip_tcp_timer</definition> <argsstring>(void *arg)</argsstring> <name>tcpip_tcp_timer</name> <param> <type>void *</type> <declname>arg</declname> </param> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> <inbodydescription> </inbodydescription> <location file="/usr/home/reddawg/source/ubix2/src/sys/net/api/tcpip.c" line="61" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/net/api/tcpip.c" bodystart="60" bodyend="64"/> <references refid="def_8h_1070d2ce7b6bb7e5c05602aa8c308d0c4" compoundref="def_8h" startline="41">NULL</references> <references refid="sys_8h_1eb917c25d96a51e1998478b9e6e78a44">sys_timeout</references> <references refid="tcp_8h_13846a756b13214ed88ea47d0ff8279eb">tcp_tmr</references> <references refid="tcp_8h_1d3e68a4c69b6e005e1de46275de3dd09" compoundref="tcp_8h" startline="125">TCP_TMR_INTERVAL</references> <referencedby refid="tcpip_8c_161474ad2c2c25ba58cc774e2bcc4ef5f" compoundref="tcpip_8c" startline="68" endline="98">tcpip_thread</referencedby> </memberdef> <memberdef kind="function" id="tcpip_8c_161474ad2c2c25ba58cc774e2bcc4ef5f" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual"> <type>void</type> <definition>static void tcpip_thread</definition> <argsstring>(void *arg)</argsstring> <name>tcpip_thread</name> <param> <type>void *</type> <declname>arg</declname> </param> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> <inbodydescription> </inbodydescription> <location file="/usr/home/reddawg/source/ubix2/src/sys/net/api/tcpip.c" line="69" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/net/api/tcpip.c" bodystart="68" bodyend="98"/> <references refid="api__msg_8h_1b15a981fb41b53567d7a4e9412c6f4c1" compoundref="api__msg_8c" startline="517" endline="520">api_msg_input</references> <references refid="ipv4_2ip_8h_18be0857c3bd133182ecd9e0dd700f7c7">ip_init</references> <references refid="ipv4_2ip_8h_13c420dab0c6760df099a2d688fa42a26">ip_input</references> <references refid="tcpip_8c_1189da3fa172ad9c1b0491dcb4857fee6" compoundref="tcpip_8c" startline="56">mbox</references> <references refid="memp_8h_1269bd926cd0413cf1948cf1992209451">memp_freep</references> <references refid="memp_8h_185a164b1f7764951cc685ea525114e57110e78608e5acf1cf15cb442dfffd84f">MEMP_TCPIP_MSG</references> <references refid="structtcpip__msg_138c897bf24dd203fd685fd8233329352">tcpip_msg::msg</references> <references refid="def_8h_1070d2ce7b6bb7e5c05602aa8c308d0c4" compoundref="def_8h" startline="41">NULL</references> <references refid="sys_8h_1afce1f71c38e3d7d08ebf0654ec97dfa">sys_mbox_fetch</references> <references refid="sys_8h_1eb917c25d96a51e1998478b9e6e78a44">sys_timeout</references> <references refid="tcp_8h_151de4ded7d342456d31722493c92c969">tcp_init</references> <references refid="tcp_8h_1d3e68a4c69b6e005e1de46275de3dd09" compoundref="tcp_8h" startline="125">TCP_TMR_INTERVAL</references> <references refid="tcpip_8c_1696c6d03effd7dbc7615f2b7758b3ce2" compoundref="tcpip_8c" startline="54">tcpip_init_done</references> <references refid="tcpip_8c_1f3f9b0102b8b4f5a674034f5421ef918" compoundref="tcpip_8c" startline="55">tcpip_init_done_arg</references> <references refid="tcpip_8h_11e0cb5032a61055e3f4a3426ed5489378665d0f2f1498c366e90d67a1e4c7f80">TCPIP_MSG_API</references> <references refid="tcpip_8h_11e0cb5032a61055e3f4a3426ed548937c4e5735b0b02d605e97466bec94cdf71">TCPIP_MSG_INPUT</references> <references refid="tcpip_8c_137e1880ffdc8a50daa4e9876bc894a8f" compoundref="tcpip_8c" startline="60" endline="64">tcpip_tcp_timer</references> <references refid="udp_8h_1e7f7431ce99333577d7b82b26619309e">udp_init</references> <referencedby refid="tcpip_8c_1aa3df02b3de2b41fe4bf7b2194e5e8e0" compoundref="tcpip_8c" startline="135" endline="141">tcpip_init</referencedby> </memberdef> </sectiondef> <sectiondef kind="var"> <memberdef kind="variable" id="tcpip_8c_1189da3fa172ad9c1b0491dcb4857fee6" prot="public" static="yes" mutable="no"> <type><ref refid="structsys__mbox" kindref="compound">sys_mbox_t</ref></type> <definition>sys_mbox_t mbox</definition> <argsstring></argsstring> <name>mbox</name> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> <inbodydescription> </inbodydescription> <location file="/usr/home/reddawg/source/ubix2/src/sys/net/api/tcpip.c" line="56" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/net/api/tcpip.c" bodystart="56" bodyend="-1"/> <referencedby refid="api__msg_8c_1c34376c05c2532858367dbdc2eec6ba0" compoundref="api__msg_8c" startline="160" endline="200">accept_function</referencedby> <referencedby refid="system_8c_17fe5c18f6d5c29d15a74277234d18739" compoundref="system_8c" startline="69" endline="97">mpi_createMbox</referencedby> <referencedby refid="system_8c_1bde5afef3a059fc7e8f355486f80a4cd" compoundref="system_8c" startline="234" endline="255">mpi_destroyMbox</referencedby> <referencedby refid="system_8c_176ba344daaa7e476f1d23c4f23f31615" compoundref="system_8c" startline="189" endline="223">mpi_fetchMessage</referencedby> <referencedby refid="system_8c_14c1ab97a8c5205302e9f2a588bedc730" compoundref="system_8c" startline="47" endline="57">mpi_findMbox</referencedby> <referencedby refid="system_8c_127f6a180049b096910c4ffd8b152fbb8" compoundref="system_8c" startline="143" endline="178">mpi_postMessage</referencedby> <referencedby refid="system_8c_1806e9deddf18f8be353745a16e8f5e85" compoundref="system_8c" startline="108" endline="132">mpi_spam</referencedby> <referencedby refid="sys__arch_8c_1d3bc5455ca12b164bfc78974ff0c1e3c" compoundref="sys__arch_8c" startline="254" endline="293">sys_arch_mbox_fetch</referencedby> <referencedby refid="sys__arch_8c_15f93e13777922e6745f5aeb6bb27ee0b" compoundref="sys__arch_8c" startline="215" endline="225">sys_mbox_free</referencedby> <referencedby refid="sys__arch_8c_1fd77d183bb0693a21119223e72af96c2" compoundref="sys__arch_8c" startline="204" endline="213">sys_mbox_new</referencedby> <referencedby refid="sys__arch_8c_11e7a0edf077b67162d80fefffc8805fb" compoundref="sys__arch_8c" startline="227" endline="252">sys_mbox_post</referencedby> <referencedby refid="tcpip_8c_1d72ca05f74e20244cd26a8828711e9f2" compoundref="tcpip_8c" startline="121" endline="132">tcpip_apimsg</referencedby> <referencedby refid="tcpip_8c_1aa3df02b3de2b41fe4bf7b2194e5e8e0" compoundref="tcpip_8c" startline="135" endline="141">tcpip_init</referencedby> <referencedby refid="tcpip_8c_1e510f195171bed8499ae94e264a92717" compoundref="tcpip_8c" startline="101" endline="118">tcpip_input</referencedby> <referencedby refid="tcpip_8c_161474ad2c2c25ba58cc774e2bcc4ef5f" compoundref="tcpip_8c" startline="68" endline="98">tcpip_thread</referencedby> </memberdef> <memberdef kind="variable" id="tcpip_8c_1696c6d03effd7dbc7615f2b7758b3ce2" prot="public" static="yes" mutable="no"> <type>void(*)</type> <definition>void(* ) tcpip_init_done(void *arg)</definition> <argsstring>(void *arg)</argsstring> <name>tcpip_init_done</name> <initializer> NULL</initializer> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> <inbodydescription> </inbodydescription> <location file="/usr/home/reddawg/source/ubix2/src/sys/net/api/tcpip.c" line="54" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/net/api/tcpip.c" bodystart="54" bodyend="-1"/> <referencedby refid="init_8c_1ced8bfa512e574c34b87586a3de7a94a" compoundref="init_8c" startline="66" endline="92">netMainThread</referencedby> <referencedby refid="tcpip_8c_1aa3df02b3de2b41fe4bf7b2194e5e8e0" compoundref="tcpip_8c" startline="135" endline="141">tcpip_init</referencedby> <referencedby refid="tcpip_8c_161474ad2c2c25ba58cc774e2bcc4ef5f" compoundref="tcpip_8c" startline="68" endline="98">tcpip_thread</referencedby> </memberdef> <memberdef kind="variable" id="tcpip_8c_1f3f9b0102b8b4f5a674034f5421ef918" prot="public" static="yes" mutable="no"> <type>void *</type> <definition>void* tcpip_init_done_arg</definition> <argsstring></argsstring> <name>tcpip_init_done_arg</name> <briefdescription> </briefdescription> <detaileddescription> </detaileddescription> <inbodydescription> </inbodydescription> <location file="/usr/home/reddawg/source/ubix2/src/sys/net/api/tcpip.c" line="55" bodyfile="/usr/home/reddawg/source/ubix2/src/sys/net/api/tcpip.c" bodystart="55" bodyend="-1"/> <referencedby refid="tcpip_8c_1aa3df02b3de2b41fe4bf7b2194e5e8e0" compoundref="tcpip_8c" startline="135" endline="141">tcpip_init</referencedby> <referencedby refid="tcpip_8c_161474ad2c2c25ba58cc774e2bcc4ef5f" compoundref="tcpip_8c" startline="68" endline="98">tcpip_thread</referencedby> </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: tcpip_8c.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></codeline> <codeline lineno="36"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/><<ref refid="exec_8h" kindref="compound">ubixos/exec.h</ref>></highlight><highlight class="normal"></highlight></codeline> <codeline lineno="37"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/><<ref refid="kmalloc_8h" kindref="compound">lib/kmalloc.h</ref>></highlight><highlight class="normal"></highlight></codeline> <codeline lineno="38"><highlight class="normal"></highlight></codeline> <codeline lineno="39"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/>"<ref refid="debug_8h" kindref="compound">net/debug.h</ref>"</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="40"><highlight class="normal"></highlight></codeline> <codeline lineno="41"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/>"<ref refid="opt_8h" kindref="compound">net/opt.h</ref>"</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="42"><highlight class="normal"></highlight></codeline> <codeline lineno="43"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/>"<ref refid="sys_8h" kindref="compound">net/sys.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="memp_8h" kindref="compound">net/memp.h</ref>"</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="46"><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="47"><highlight class="normal"></highlight></codeline> <codeline lineno="48"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/>"<ref refid="ipv4_2ip_8h" kindref="compound">net/ipv4/ip.h</ref>"</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="49"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/>"<ref refid="udp_8h" kindref="compound">net/udp.h</ref>"</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="50"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/>"<ref refid="tcp_8h" kindref="compound">net/tcp.h</ref>"</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="51"><highlight class="normal"></highlight></codeline> <codeline lineno="52"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/>"<ref refid="tcpip_8h" kindref="compound">net/tcpip.h</ref>"</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="53"><highlight class="normal"></highlight></codeline> <codeline lineno="54" refid="tcpip_8c_1696c6d03effd7dbc7615f2b7758b3ce2" refkind="member"><highlight class="normal"></highlight><highlight class="keyword">static</highlight><highlight class="normal"><sp/>void<sp/>(*<sp/><ref refid="tcpip_8c_1696c6d03effd7dbc7615f2b7758b3ce2" kindref="member">tcpip_init_done</ref>)(</highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/>*arg)<sp/>=<sp/><ref refid="def_8h_1070d2ce7b6bb7e5c05602aa8c308d0c4" kindref="member">NULL</ref>;</highlight></codeline> <codeline lineno="55" refid="tcpip_8c_1f3f9b0102b8b4f5a674034f5421ef918" refkind="member"><highlight class="normal"></highlight><highlight class="keyword">static</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/>*<ref refid="tcpip_8c_1f3f9b0102b8b4f5a674034f5421ef918" kindref="member">tcpip_init_done_arg</ref>;</highlight></codeline> <codeline lineno="56" refid="tcpip_8c_1189da3fa172ad9c1b0491dcb4857fee6" refkind="member"><highlight class="normal"></highlight><highlight class="keyword">static</highlight><highlight class="normal"><sp/><ref refid="structsys__mbox" kindref="compound">sys_mbox_t</ref><sp/><ref refid="tcpip_8c_1189da3fa172ad9c1b0491dcb4857fee6" kindref="member">mbox</ref>;</highlight></codeline> <codeline lineno="57"><highlight class="normal"></highlight></codeline> <codeline lineno="58"><highlight class="normal"></highlight><highlight class="comment">/*-----------------------------------------------------------------------------------*/</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="59"><highlight class="normal"></highlight><highlight class="keyword">static</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="60" refid="tcpip_8c_137e1880ffdc8a50daa4e9876bc894a8f" refkind="member"><highlight class="normal"><ref refid="tcpip_8c_137e1880ffdc8a50daa4e9876bc894a8f" kindref="member">tcpip_tcp_timer</ref>(</highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/>*arg)</highlight></codeline> <codeline lineno="61"><highlight class="normal">{</highlight></codeline> <codeline lineno="62"><highlight class="normal"><sp/><sp/><ref refid="tcp_8h_13846a756b13214ed88ea47d0ff8279eb" kindref="member">tcp_tmr</ref>();</highlight></codeline> <codeline lineno="63"><highlight class="normal"><sp/><sp/><ref refid="sys_8h_1eb917c25d96a51e1998478b9e6e78a44" kindref="member">sys_timeout</ref>(<ref refid="tcp_8h_1d3e68a4c69b6e005e1de46275de3dd09" kindref="member">TCP_TMR_INTERVAL</ref>,<sp/>(<ref refid="sys_8h_11aa9ee90811cc556b2011559ae4154a8" kindref="member">sys_timeout_handler</ref>)<ref refid="tcpip_8c_137e1880ffdc8a50daa4e9876bc894a8f" kindref="member">tcpip_tcp_timer</ref>,<sp/><ref refid="def_8h_1070d2ce7b6bb7e5c05602aa8c308d0c4" kindref="member">NULL</ref>);</highlight></codeline> <codeline lineno="64"><highlight class="normal">}</highlight></codeline> <codeline lineno="65"><highlight class="normal"></highlight><highlight class="comment">/*-----------------------------------------------------------------------------------*/</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="66"><highlight class="normal"></highlight></codeline> <codeline lineno="67"><highlight class="normal"></highlight><highlight class="keyword">static</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="68" refid="tcpip_8c_161474ad2c2c25ba58cc774e2bcc4ef5f" refkind="member"><highlight class="normal"><ref refid="tcpip_8c_161474ad2c2c25ba58cc774e2bcc4ef5f" kindref="member">tcpip_thread</ref>(</highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/>*arg)</highlight></codeline> <codeline lineno="69"><highlight class="normal">{</highlight></codeline> <codeline lineno="70"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">struct<sp/></highlight><highlight class="normal"><ref refid="structtcpip__msg" kindref="compound">tcpip_msg</ref><sp/>*<ref refid="structtcpip__msg_138c897bf24dd203fd685fd8233329352" kindref="member">msg</ref>;</highlight></codeline> <codeline lineno="71"><highlight class="normal"></highlight></codeline> <codeline lineno="72"><highlight class="normal"><sp/><sp/><ref refid="ipv4_2ip_8h_18be0857c3bd133182ecd9e0dd700f7c7" kindref="member">ip_init</ref>();</highlight></codeline> <codeline lineno="73"><highlight class="normal"><sp/><sp/><ref refid="udp_8h_1e7f7431ce99333577d7b82b26619309e" kindref="member">udp_init</ref>();</highlight></codeline> <codeline lineno="74"><highlight class="normal"><sp/><sp/><ref refid="tcp_8h_151de4ded7d342456d31722493c92c969" kindref="member">tcp_init</ref>();</highlight></codeline> <codeline lineno="75"><highlight class="normal"></highlight></codeline> <codeline lineno="76"><highlight class="normal"><sp/><sp/><ref refid="sys_8h_1eb917c25d96a51e1998478b9e6e78a44" kindref="member">sys_timeout</ref>(<ref refid="tcp_8h_1d3e68a4c69b6e005e1de46275de3dd09" kindref="member">TCP_TMR_INTERVAL</ref>,<sp/>(<ref refid="sys_8h_11aa9ee90811cc556b2011559ae4154a8" kindref="member">sys_timeout_handler</ref>)<ref refid="tcpip_8c_137e1880ffdc8a50daa4e9876bc894a8f" kindref="member">tcpip_tcp_timer</ref>,<sp/><ref refid="def_8h_1070d2ce7b6bb7e5c05602aa8c308d0c4" kindref="member">NULL</ref>);</highlight></codeline> <codeline lineno="77"><highlight class="normal"><sp/><sp/></highlight></codeline> <codeline lineno="78"><highlight class="normal"><sp/><sp/></highlight><highlight class="keywordflow">if</highlight><highlight class="normal">(<ref refid="tcpip_8c_1696c6d03effd7dbc7615f2b7758b3ce2" kindref="member">tcpip_init_done</ref><sp/>!=<sp/><ref refid="def_8h_1070d2ce7b6bb7e5c05602aa8c308d0c4" kindref="member">NULL</ref>)<sp/>{</highlight></codeline> <codeline lineno="79"><highlight class="normal"><sp/><sp/><sp/><sp/><ref refid="tcpip_8c_1696c6d03effd7dbc7615f2b7758b3ce2" kindref="member">tcpip_init_done</ref>(<ref refid="tcpip_8c_1f3f9b0102b8b4f5a674034f5421ef918" kindref="member">tcpip_init_done_arg</ref>);</highlight></codeline> <codeline lineno="80"><highlight class="normal"><sp/><sp/>}</highlight></codeline> <codeline lineno="81"><highlight class="normal"></highlight></codeline> <codeline lineno="82"><highlight class="normal"><sp/><sp/></highlight><highlight class="keywordflow">while</highlight><highlight class="normal">(1)<sp/>{<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="comment">/*<sp/>MAIN<sp/>Loop<sp/>*/</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="83"><highlight class="normal"><sp/><sp/><sp/><sp/><ref refid="sys_8h_1afce1f71c38e3d7d08ebf0654ec97dfa" kindref="member">sys_mbox_fetch</ref>(<ref refid="tcpip_8c_1189da3fa172ad9c1b0491dcb4857fee6" kindref="member">mbox</ref>,<sp/>(</highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/>*)&<ref refid="structtcpip__msg_138c897bf24dd203fd685fd8233329352" kindref="member">msg</ref>);</highlight></codeline> <codeline lineno="84"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">switch</highlight><highlight class="normal">(msg->type)<sp/>{</highlight></codeline> <codeline lineno="85"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">case</highlight><highlight class="normal"><sp/><ref refid="tcpip_8h_11e0cb5032a61055e3f4a3426ed5489378665d0f2f1498c366e90d67a1e4c7f80" kindref="member">TCPIP_MSG_API</ref>:</highlight></codeline> <codeline lineno="86"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="comment">//kprintf("tcpip_thread:<sp/>API<sp/>message<sp/>%p\n",<sp/>msg);</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="87"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><ref refid="api__msg_8h_1b15a981fb41b53567d7a4e9412c6f4c1" kindref="member">api_msg_input</ref>(msg->msg.apimsg);</highlight></codeline> <codeline lineno="88"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">break</highlight><highlight class="normal">;</highlight></codeline> <codeline lineno="89"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">case</highlight><highlight class="normal"><sp/><ref refid="tcpip_8h_11e0cb5032a61055e3f4a3426ed548937c4e5735b0b02d605e97466bec94cdf71" kindref="member">TCPIP_MSG_INPUT</ref>:</highlight></codeline> <codeline lineno="90"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="comment">//kprintf("tcpip_thread:<sp/>IP<sp/>packet<sp/>%p\n",<sp/>msg);</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="91"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><ref refid="ipv4_2ip_8h_13c420dab0c6760df099a2d688fa42a26" kindref="member">ip_input</ref>(msg->msg.inp.p,<sp/>msg->msg.inp.netif);</highlight></codeline> <codeline lineno="92"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">break</highlight><highlight class="normal">;</highlight></codeline> <codeline lineno="93"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">default</highlight><highlight class="normal">:</highlight></codeline> <codeline lineno="94"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">break</highlight><highlight class="normal">;</highlight></codeline> <codeline lineno="95"><highlight class="normal"><sp/><sp/><sp/><sp/>}</highlight></codeline> <codeline lineno="96"><highlight class="normal"><sp/><sp/><sp/><sp/><ref refid="memp_8h_1269bd926cd0413cf1948cf1992209451" kindref="member">memp_freep</ref>(<ref refid="memp_8h_185a164b1f7764951cc685ea525114e57110e78608e5acf1cf15cb442dfffd84f" kindref="member">MEMP_TCPIP_MSG</ref>,<sp/>msg);</highlight></codeline> <codeline lineno="97"><highlight class="normal"><sp/><sp/>}</highlight></codeline> <codeline lineno="98"><highlight class="normal">}</highlight></codeline> <codeline lineno="99"><highlight class="normal"></highlight><highlight class="comment">/*-----------------------------------------------------------------------------------*/</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="100"><highlight class="normal"><ref refid="err_8h_1b7190f3da5c85931fc059e0312bc1407" kindref="member">err_t</ref></highlight></codeline> <codeline lineno="101" refid="tcpip_8c_1e510f195171bed8499ae94e264a92717" refkind="member"><highlight class="normal"><ref refid="tcpip_8h_1e510f195171bed8499ae94e264a92717" kindref="member">tcpip_input</ref>(</highlight><highlight class="keyword">struct</highlight><highlight class="normal"><sp/><ref refid="structpbuf" kindref="compound">pbuf</ref><sp/>*<ref refid="structtcpip__msg_19298bc5d6d92c5efd478dac92c09459b" kindref="member">p</ref>,<sp/></highlight><highlight class="keyword">struct</highlight><highlight class="normal"><sp/><ref refid="structnetif" kindref="compound">netif</ref><sp/>*<ref refid="structtcpip__msg_173fb4cc463db05b4ba1fe3219497969d" kindref="member">inp</ref>)</highlight></codeline> <codeline lineno="102"><highlight class="normal">{</highlight></codeline> <codeline lineno="103"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">struct<sp/></highlight><highlight class="normal"><ref refid="structtcpip__msg" kindref="compound">tcpip_msg</ref><sp/>*<ref refid="structtcpip__msg_138c897bf24dd203fd685fd8233329352" kindref="member">msg</ref>;</highlight></codeline> <codeline lineno="104"><highlight class="normal"><sp/><sp/></highlight></codeline> <codeline lineno="105"><highlight class="normal"><sp/><sp/><ref refid="structtcpip__msg_138c897bf24dd203fd685fd8233329352" kindref="member">msg</ref><sp/>=<sp/><ref refid="memp_8h_18fd5bd978dc56399e1649381cc2a1aeb" kindref="member">memp_mallocp</ref>(<ref refid="memp_8h_185a164b1f7764951cc685ea525114e57110e78608e5acf1cf15cb442dfffd84f" kindref="member">MEMP_TCPIP_MSG</ref>);</highlight></codeline> <codeline lineno="106"><highlight class="normal"><sp/><sp/></highlight><highlight class="keywordflow">if</highlight><highlight class="normal">(<ref refid="structtcpip__msg_138c897bf24dd203fd685fd8233329352" kindref="member">msg</ref><sp/>==<sp/><ref refid="def_8h_1070d2ce7b6bb7e5c05602aa8c308d0c4" kindref="member">NULL</ref>)<sp/>{</highlight></codeline> <codeline lineno="107"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="comment">//kprintf("BAD<sp/>MESSAGE!!!\n");</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="108"><highlight class="normal"><sp/><sp/><sp/><sp/><ref refid="pbuf_8h_1334112aa2ac402c254d604c0dbbbb746" kindref="member">pbuf_free</ref>(<ref refid="structtcpip__msg_19298bc5d6d92c5efd478dac92c09459b" kindref="member">p</ref>);<sp/><sp/><sp/><sp/></highlight></codeline> <codeline lineno="109"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">return</highlight><highlight class="normal"><sp/><ref refid="err_8h_16ab63185cc5dff3c50c61d99bdf98369" kindref="member">ERR_MEM</ref>;<sp/><sp/></highlight></codeline> <codeline lineno="110"><highlight class="normal"><sp/><sp/>}</highlight></codeline> <codeline lineno="111"><highlight class="normal"><sp/><sp/></highlight><highlight class="comment">//kprintf("GOOD<sp/>MESSAGE\n");</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="112"><highlight class="normal"><sp/><sp/></highlight></codeline> <codeline lineno="113"><highlight class="normal"><sp/><sp/><ref refid="structtcpip__msg_138c897bf24dd203fd685fd8233329352" kindref="member">msg</ref>->type<sp/>=<sp/><ref refid="tcpip_8h_11e0cb5032a61055e3f4a3426ed548937c4e5735b0b02d605e97466bec94cdf71" kindref="member">TCPIP_MSG_INPUT</ref>;</highlight></codeline> <codeline lineno="114"><highlight class="normal"><sp/><sp/><ref refid="structtcpip__msg_138c897bf24dd203fd685fd8233329352" kindref="member">msg</ref>->msg.inp.p<sp/>=<sp/><ref refid="structtcpip__msg_19298bc5d6d92c5efd478dac92c09459b" kindref="member">p</ref>;</highlight></codeline> <codeline lineno="115"><highlight class="normal"><sp/><sp/><ref refid="structtcpip__msg_138c897bf24dd203fd685fd8233329352" kindref="member">msg</ref>->msg.inp.netif<sp/>=<sp/><ref refid="structtcpip__msg_173fb4cc463db05b4ba1fe3219497969d" kindref="member">inp</ref>;</highlight></codeline> <codeline lineno="116"><highlight class="normal"><sp/><sp/><ref refid="sys_8h_1217a9af37c5dd7c3fc16daddaacb976f" kindref="member">sys_mbox_post</ref>(<ref refid="tcpip_8c_1189da3fa172ad9c1b0491dcb4857fee6" kindref="member">mbox</ref>,<sp/><ref refid="structtcpip__msg_138c897bf24dd203fd685fd8233329352" kindref="member">msg</ref>);</highlight></codeline> <codeline lineno="117"><highlight class="normal"><sp/><sp/></highlight><highlight class="keywordflow">return</highlight><highlight class="normal"><sp/><ref refid="err_8h_198c763adfeea8e9831c46ec269e47ae9" kindref="member">ERR_OK</ref>;</highlight></codeline> <codeline lineno="118"><highlight class="normal">}</highlight></codeline> <codeline lineno="119"><highlight class="normal"></highlight><highlight class="comment">/*-----------------------------------------------------------------------------------*/</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="120"><highlight class="normal"></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="121" refid="tcpip_8c_1d72ca05f74e20244cd26a8828711e9f2" refkind="member"><highlight class="normal"><ref refid="tcpip_8h_1d72ca05f74e20244cd26a8828711e9f2" kindref="member">tcpip_apimsg</ref>(</highlight><highlight class="keyword">struct</highlight><highlight class="normal"><sp/><ref refid="structapi__msg" kindref="compound">api_msg</ref><sp/>*<ref refid="structtcpip__msg_10725900e18ae1dc3f2d3c09f9fc7ba98" kindref="member">apimsg</ref>)</highlight></codeline> <codeline lineno="122"><highlight class="normal">{</highlight></codeline> <codeline lineno="123"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">struct<sp/></highlight><highlight class="normal"><ref refid="structtcpip__msg" kindref="compound">tcpip_msg</ref><sp/>*<ref refid="structtcpip__msg_138c897bf24dd203fd685fd8233329352" kindref="member">msg</ref>;</highlight></codeline> <codeline lineno="124"><highlight class="normal"><sp/><sp/><ref refid="structtcpip__msg_138c897bf24dd203fd685fd8233329352" kindref="member">msg</ref><sp/>=<sp/><ref refid="memp_8h_18fd5bd978dc56399e1649381cc2a1aeb" kindref="member">memp_mallocp</ref>(<ref refid="memp_8h_185a164b1f7764951cc685ea525114e57110e78608e5acf1cf15cb442dfffd84f" kindref="member">MEMP_TCPIP_MSG</ref>);</highlight></codeline> <codeline lineno="125"><highlight class="normal"><sp/><sp/></highlight><highlight class="keywordflow">if</highlight><highlight class="normal">(<ref refid="structtcpip__msg_138c897bf24dd203fd685fd8233329352" kindref="member">msg</ref><sp/>==<sp/><ref refid="def_8h_1070d2ce7b6bb7e5c05602aa8c308d0c4" kindref="member">NULL</ref>)<sp/>{</highlight></codeline> <codeline lineno="126"><highlight class="normal"><sp/><sp/><sp/><sp/><ref refid="memp_8h_1ecd94926b7c2a0e23ae195f4ae97581f" kindref="member">memp_free</ref>(<ref refid="memp_8h_185a164b1f7764951cc685ea525114e57110e78608e5acf1cf15cb442dfffd84f" kindref="member">MEMP_TCPIP_MSG</ref>,<sp/><ref refid="structtcpip__msg_10725900e18ae1dc3f2d3c09f9fc7ba98" kindref="member">apimsg</ref>);</highlight></codeline> <codeline lineno="127"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">return</highlight><highlight class="normal">;</highlight></codeline> <codeline lineno="128"><highlight class="normal"><sp/><sp/>}</highlight></codeline> <codeline lineno="129"><highlight class="normal"><sp/><sp/><ref refid="structtcpip__msg_138c897bf24dd203fd685fd8233329352" kindref="member">msg</ref>->type<sp/>=<sp/><ref refid="tcpip_8h_11e0cb5032a61055e3f4a3426ed5489378665d0f2f1498c366e90d67a1e4c7f80" kindref="member">TCPIP_MSG_API</ref>;</highlight></codeline> <codeline lineno="130"><highlight class="normal"><sp/><sp/><ref refid="structtcpip__msg_138c897bf24dd203fd685fd8233329352" kindref="member">msg</ref>->msg.apimsg<sp/>=<sp/><ref refid="structtcpip__msg_10725900e18ae1dc3f2d3c09f9fc7ba98" kindref="member">apimsg</ref>;</highlight></codeline> <codeline lineno="131"><highlight class="normal"><sp/><sp/><ref refid="sys_8h_1217a9af37c5dd7c3fc16daddaacb976f" kindref="member">sys_mbox_post</ref>(<ref refid="tcpip_8c_1189da3fa172ad9c1b0491dcb4857fee6" kindref="member">mbox</ref>,<sp/><ref refid="structtcpip__msg_138c897bf24dd203fd685fd8233329352" kindref="member">msg</ref>);</highlight></codeline> <codeline lineno="132"><highlight class="normal">}</highlight></codeline> <codeline lineno="133"><highlight class="normal"></highlight><highlight class="comment">/*-----------------------------------------------------------------------------------*/</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="134"><highlight class="normal"></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="135" refid="tcpip_8c_1aa3df02b3de2b41fe4bf7b2194e5e8e0" refkind="member"><highlight class="normal"><ref refid="tcpip_8h_19a61ea92b584bd1c1c5e9d5c2a5cbc36" kindref="member">tcpip_init</ref>(</highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/>(*<sp/>initfunc)(</highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/>*),<sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/>*arg)</highlight></codeline> <codeline lineno="136"><highlight class="normal">{</highlight></codeline> <codeline lineno="137"><highlight class="normal"><sp/><sp/><ref refid="tcpip_8c_1696c6d03effd7dbc7615f2b7758b3ce2" kindref="member">tcpip_init_done</ref><sp/>=<sp/>initfunc;</highlight></codeline> <codeline lineno="138"><highlight class="normal"><sp/><sp/><ref refid="tcpip_8c_1f3f9b0102b8b4f5a674034f5421ef918" kindref="member">tcpip_init_done_arg</ref><sp/>=<sp/>arg;</highlight></codeline> <codeline lineno="139"><highlight class="normal"><sp/><sp/><ref refid="tcpip_8c_1189da3fa172ad9c1b0491dcb4857fee6" kindref="member">mbox</ref><sp/>=<sp/><ref refid="sys_8h_13b766e6df37d63d5f1144c5089c2af94" kindref="member">sys_mbox_new</ref>();</highlight></codeline> <codeline lineno="140"><highlight class="normal"><sp/><sp/><ref refid="sys_8h_1eb9b7d7cea295be85b0b0ddb7c9fe566" kindref="member">sys_thread_new</ref>((</highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/>*)<ref refid="tcpip_8c_161474ad2c2c25ba58cc774e2bcc4ef5f" kindref="member">tcpip_thread</ref>,<sp/><ref refid="def_8h_1070d2ce7b6bb7e5c05602aa8c308d0c4" kindref="member">NULL</ref>);</highlight></codeline> <codeline lineno="141"><highlight class="normal">}</highlight></codeline> <codeline lineno="142"><highlight class="normal"></highlight><highlight class="comment">/*-----------------------------------------------------------------------------------*/</highlight><highlight class="normal"></highlight></codeline> <codeline lineno="143"><highlight class="normal"></highlight></codeline> <codeline lineno="144"><highlight class="normal"></highlight></codeline> <codeline lineno="145"><highlight class="normal"></highlight></codeline> </programlisting> <location file="/usr/home/reddawg/source/ubix2/src/sys/net/api/tcpip.c"/> </compounddef> </doxygen>