mirror of
https://github.com/espressif/esp-idf.git
synced 2024-10-05 20:47:46 -04:00
tcpip_adapter: clean up dhcpc status
only auto start dhcpc in init status
This commit is contained in:
parent
f81535a840
commit
cb33a0fb9b
@ -116,10 +116,17 @@ esp_err_t system_event_sta_stop_handle_default(system_event_t *event)
|
||||
|
||||
esp_err_t system_event_sta_connected_handle_default(system_event_t *event)
|
||||
{
|
||||
tcpip_adapter_dhcp_status_t status;
|
||||
|
||||
WIFI_API_CALL_CHECK("esp_wifi_reg_rxcb", esp_wifi_reg_rxcb(WIFI_IF_STA, (wifi_rxcb_t)tcpip_adapter_sta_input), ESP_OK);
|
||||
|
||||
tcpip_adapter_up(TCPIP_ADAPTER_IF_STA);
|
||||
tcpip_adapter_dhcpc_start(TCPIP_ADAPTER_IF_STA);
|
||||
|
||||
tcpip_adapter_dhcpc_get_status(TCPIP_ADAPTER_IF_STA, &status);
|
||||
|
||||
if (status == TCPIP_ADAPTER_DHCP_INIT) {
|
||||
tcpip_adapter_dhcpc_start(TCPIP_ADAPTER_IF_STA);
|
||||
}
|
||||
|
||||
return ESP_OK;
|
||||
}
|
||||
|
@ -147,7 +147,10 @@ esp_err_t tcpip_adapter_down(tcpip_adapter_if_t tcpip_if)
|
||||
dhcp_release(esp_netif[tcpip_if]);
|
||||
dhcp_stop(esp_netif[tcpip_if]);
|
||||
dhcp_cleanup(esp_netif[tcpip_if]);
|
||||
dhcpc_status = TCPIP_ADAPTER_DHCP_STOPED;
|
||||
|
||||
if (dhcpc_status != TCPIP_ADAPTER_DHCP_STOPED) {
|
||||
dhcpc_status = TCPIP_ADAPTER_DHCP_INIT;
|
||||
}
|
||||
} else {
|
||||
netif_set_down(esp_netif[tcpip_if]);
|
||||
netif_set_addr(esp_netif[tcpip_if], IP4_ADDR_ANY, IP4_ADDR_ANY, IP4_ADDR_ANY);
|
||||
|
Loading…
Reference in New Issue
Block a user