默认的 esp_eth_update_input_path() 处理函数是什么?
默认情况下,esp-idf 或 Arduino 框架使用
eth_input_to_netif.c
static esp_err_t eth_input_to_netif(esp_eth_handle_t eth_handle, uint8_t *buffer, uint32_t length, void *priv);components/esp_eth/src/esp_eth_netif_glue.c 中的函数处理传入的以太网数据包,该函数(除了调用导出函数esp_netif_receive()):
eth_input_to_netif_impl.c
static esp_err_t eth_input_to_netif(esp_eth_handle_t eth_handle, uint8_t *buffer, uint32_t length, void *priv)
{
return esp_netif_receive((esp_netif_t *)priv, buffer, length, NULL);
}函数 esp_netif_receive() 在 esp_netif.h 中声明 并实现在 esp_netif_lwip.c 中。
此函数将对数据包调用 esp_netif->lwip_input_fn(...),进而调用接口类型特定的 .input_fn(...),即以下之一
或对于包装接口:
esp_netif_lwip_slip_inputesp_netif_lwip_ppp_input
Check out similar posts by category:
ESP8266/ESP32, Networking
If this post helped you, please consider buying me a coffee or donating via PayPal to support research & publishing of new posts on TechOverflow