mirror of
https://github.com/espressif/esp-idf.git
synced 2026-10-02 11:10:54 +03:00
fix(esp_netif): avoid duplicate all-nodes multicast filter removal
This commit is contained in:
@@ -961,11 +961,14 @@ static void esp_netif_lwip_remove(esp_netif_t *esp_netif)
|
|||||||
netif_set_down(esp_netif->lwip_netif);
|
netif_set_down(esp_netif->lwip_netif);
|
||||||
}
|
}
|
||||||
#if LWIP_IPV6 && LWIP_IPV6_MLD
|
#if LWIP_IPV6 && LWIP_IPV6_MLD
|
||||||
if (esp_netif->driver_set_mac_filter) {
|
if (esp_netif->driver_set_mac_filter && esp_netif->lwip_netif->mld_mac_filter) {
|
||||||
netif_mld_mac_filter_all_nodes(esp_netif->lwip_netif, NETIF_DEL_MAC_FILTER);
|
netif_mld_mac_filter_all_nodes(esp_netif->lwip_netif, NETIF_DEL_MAC_FILTER);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
netif_remove(esp_netif->lwip_netif);
|
netif_remove(esp_netif->lwip_netif);
|
||||||
|
#if LWIP_IPV6 && LWIP_IPV6_MLD
|
||||||
|
netif_set_mld_mac_filter(esp_netif->lwip_netif, NULL);
|
||||||
|
#endif
|
||||||
#if ESP_GRATUITOUS_ARP
|
#if ESP_GRATUITOUS_ARP
|
||||||
if (esp_netif->flags & ESP_NETIF_FLAG_GARP) {
|
if (esp_netif->flags & ESP_NETIF_FLAG_GARP) {
|
||||||
netif_unset_garp_flag(esp_netif->lwip_netif);
|
netif_unset_garp_flag(esp_netif->lwip_netif);
|
||||||
|
|||||||
Reference in New Issue
Block a user