diff --git a/components/esp_netif/include/esp_netif.h b/components/esp_netif/include/esp_netif.h index aeb5ffdd6a..9372b6d150 100644 --- a/components/esp_netif/include/esp_netif.h +++ b/components/esp_netif/include/esp_netif.h @@ -275,6 +275,14 @@ void esp_netif_action_remove_ip6_address(void *esp_netif, esp_event_base_t base, */ esp_err_t esp_netif_set_default_netif(esp_netif_t *esp_netif); +/** + * @brief Getter function of the default netif + * + * This API returns the selected default netif. + * + * @return Handle to esp-netif instance of the default netif. + */ +esp_netif_t* esp_netif_get_default_netif(void); #if CONFIG_ESP_NETIF_BRIDGE_EN /** diff --git a/components/esp_netif/lwip/esp_netif_lwip.c b/components/esp_netif/lwip/esp_netif_lwip.c index 3cf86f1980..49822ada14 100644 --- a/components/esp_netif/lwip/esp_netif_lwip.c +++ b/components/esp_netif/lwip/esp_netif_lwip.c @@ -381,6 +381,11 @@ esp_err_t esp_netif_set_default_netif(esp_netif_t *esp_netif) return esp_netif_update_default_netif(esp_netif, ESP_NETIF_SET_DEFAULT); } +esp_netif_t *esp_netif_get_default_netif(void) +{ + return s_last_default_esp_netif; +} + static inline esp_netif_t* lwip_get_esp_netif(struct netif *netif) { #if LWIP_ESP_NETIF_DATA