diff --git a/CHANGELOG b/CHANGELOG index 04e63e31..a1ede80e 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -63,6 +63,9 @@ HISTORY ++ Bug fixes: + 2006-11-28 Christiaan Simons + * netif.c: In netif_add() fixed missing clear of ip_addr, netmask, gw and flags. + 2006-10-11 Christiaan Simons * api_lib.c etharp.c, ip.c, memp.c, stats.c, sys.{c,h} tcp.h: Partially accepted patch #5449 for ANSI C compatibility / build fixes. diff --git a/src/core/netif.c b/src/core/netif.c index a2e8a03e..b1e2bc18 100644 --- a/src/core/netif.c +++ b/src/core/netif.c @@ -69,7 +69,12 @@ netif_add(struct netif *netif, struct ip_addr *ipaddr, struct ip_addr *netmask, err_t (* input)(struct pbuf *p, struct netif *netif)) { static s16_t netifnum = 0; - + + /* reset new interface configuration state */ + netif->ip_addr.addr = 0; + netif->netmask.addr = 0; + netif->gw.addr = 0; + netif->flags = 0; #if LWIP_DHCP /* netif not under DHCP control by default */ netif->dhcp = NULL;