Rishi Khan wrote:
So, if you call NETIF_FLAG_ETHARP, they you should leave the header alone, but if you don't call NETIF_FLAG_ETHARP, you should leave it there. Doesn't that seem weird? Why should the TCP/IP stack handle ARP? This is inherently an ethernet problem.
Just for better understanding, the handling of ARP packets has changed in 1.3.0: Previously they were indeed handled by the 'ethernetif' code. The problem was that this way, the ARP table wasn't protected against concurrent access (from receive thread an tcpip_thread - when sending). This was solved by letting the tcpip_thread handle ARP packets, which is the reason why ethernet netifs have to pass the complete packet, not only the IP part.

Simon


_______________________________________________
lwip-users mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/lwip-users

Reply via email to