From a0968b06b645ca6ae0027d88fb5d17e9c0331f71 Mon Sep 17 00:00:00 2001 From: Jin-Seong Kim Date: Wed, 21 Dec 2016 11:37:32 +0900 Subject: [PATCH] lwip/dhcp: change de-initialization value of netmask Netmask of IP_ADDR_ANY is 0.0.0.0, it causes wrong netif assignment due to wrong ip address comparsion with 0.0.0.0 netmask. ip_route may not work properly with netmask 0.0.0.0. Change-Id: I57a0f514e5e7ba58d94d6feb37c0f9f96a016709 Signed-off-by: jseong82.kim --- os/net/lwip/src/core/dhcp.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/os/net/lwip/src/core/dhcp.c b/os/net/lwip/src/core/dhcp.c index 43f370b..8715a20 100644 --- a/os/net/lwip/src/core/dhcp.c +++ b/os/net/lwip/src/core/dhcp.c @@ -1211,9 +1211,11 @@ void dhcp_stop(struct netif *netif) } #endif /* LWIP_DHCP_AUTOIP_COOP */ + ip_addr_t ipaddr; netif_set_ipaddr(netif, IP_ADDR_ANY); netif_set_gw(netif, IP_ADDR_ANY); - netif_set_netmask(netif, IP_ADDR_ANY); + ipaddr.addr = IPADDR_NONE; + netif_set_netmask(netif, &ipaddr); if (dhcp->pcb != NULL) { udp_remove(dhcp->pcb); -- 2.7.4