fix(esp_netif): Fix incorrect DHCP call for PPP interfaces

Closes https://github.com/espressif/esp-protocols/issues/800
This commit is contained in:
David Cermak
2025-04-14 18:49:43 +02:00
committed by David Čermák
parent 904d9526d3
commit b90c12c30f

View File

@ -1455,7 +1455,14 @@ static void esp_netif_internal_dhcpc_cb(struct netif *netif)
ESP_LOGE(TAG, "dhcpc cb: failed to post got ip event (%x)", ret);
}
#ifdef CONFIG_LWIP_DHCP_RESTORE_LAST_IP
dhcp_ip_addr_store(netif);
/*
* Store the IP address only for non-Point-to-Point interfaces.
* P2P interfaces (like PPP) have dynamic addressing that shouldn't be stored
* for later restoration, as they're negotiated on each connection.
*/
if (!_IS_NETIF_ANY_POINT2POINT_TYPE(esp_netif)) {
dhcp_ip_addr_store(netif);
}
#endif /* CONFIG_LWIP_DHCP_RESTORE_LAST_IP */
} else {
ESP_LOGD(TAG, "if%p ip unchanged", esp_netif);