Was ist die Standard-esp_eth_update_input_path()-Handler-Funktion?
Standardmäßig behandelt esp-idf oder das Arduino-Framework eingehende Ethernet-Pakete mit der
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);Funktion in components/esp_eth/src/esp_eth_netif_glue.c, die (neben dem Aufruf nur die exportierte Funktion aufruft) 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);
}Die Funktion esp_netif_receive() ist in esp_netif.h deklariert und implementiert in esp_netif_lwip.c.
Diese Funktion ruft esp_netif->lwip_input_fn(...) auf dem Paket auf, was wiederum die interface-typspezifische .input_fn(...) aufruft, welche eine von ist
oder für gewrappte Interfaces:
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