Hi all,

My project uses StellarisWare+lwip1.3.2+BOOTP+TFTP.

Now I am analyzing lwip1.3.2 codes and if RTOS is used then call
tcpip_init(lwIPPrivateInit,
0) in lwiplib.c.
Then tcpip_thread() is called in tcpip.c

Depending on received message's type either ethernet_input() or ip_input()
are executed.

sys_mbox_fetch(mbox, (void *)&msg);

    switch (msg->type) {
case *TCPIP_MSG_INPKT*:
      LWIP_DEBUGF(TCPIP_DEBUG, ("tcpip_thread: PACKET %p\n", (void *)msg));
#if LWIP_ARP
      if (msg->msg.inp.netif->flags & NETIF_FLAG_ETHARP) {
        *ethernet_input(msg->msg.inp.p, msg->msg.inp.netif);*
      } else
#endif /* LWIP_ARP */
      {
        *ip_input(msg->msg.inp.p, msg->msg.inp.netif);*
      }
      memp_free(MEMP_TCPIP_MSG_INPKT, msg);
      break;

case TCPIP_MSG_CALLBACK:
......
......
}

I am not sure once UDP packets are received, they get through this codes.
safeRtos seems like only binding tcpip stack, so I am now tracing lwip
codes to see if UDP packets can be received from
tcpip_init(lwiPPrivateInit,0) in lwip+safeRTOS.

I know UDP and TCP/IP are different, but I don't how I can receive UDP
packets using lwip+safeRTOS.

Thanks,
Jin
_______________________________________________
lwip-users mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/lwip-users

Reply via email to