From: Wu Jian Gang Date: Fri, 26 Aug 2016 04:03:52 +0000 (+0800) Subject: tcpip_adpater: set ip to zero in tcpip_adapter_down X-Git-Tag: v0.9~70^2~4^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=588d384;p=esp-idf tcpip_adpater: set ip to zero in tcpip_adapter_down In some cases, there will have "ip unchanged", and have no event posted when station reconnected. --- diff --git a/components/tcpip_adapter/tcpip_adapter_lwip.c b/components/tcpip_adapter/tcpip_adapter_lwip.c index d6ad20ad83..a2a37be472 100644 --- a/components/tcpip_adapter/tcpip_adapter_lwip.c +++ b/components/tcpip_adapter/tcpip_adapter_lwip.c @@ -139,7 +139,7 @@ esp_err_t tcpip_adapter_up(tcpip_adapter_if_t tcpip_if) esp_err_t tcpip_adapter_down(tcpip_adapter_if_t tcpip_if) { if (tcpip_if == TCPIP_ADAPTER_IF_STA) { - if (esp_netif[tcpip_if] == NULL){ + if (esp_netif[tcpip_if] == NULL) { return ESP_ERR_TCPIP_ADAPTER_IF_NOT_READY; } @@ -155,6 +155,10 @@ esp_err_t tcpip_adapter_down(tcpip_adapter_if_t tcpip_if) netif_set_down(esp_netif[tcpip_if]); netif_set_addr(esp_netif[tcpip_if], IP4_ADDR_ANY, IP4_ADDR_ANY, IP4_ADDR_ANY); } + + ip4_addr_set_zero(&esp_ip[tcpip_if].ip); + ip4_addr_set_zero(&esp_ip[tcpip_if].gw); + ip4_addr_set_zero(&esp_ip[tcpip_if].netmask); } return ESP_OK;