summaryrefslogtreecommitdiff
path: root/components/net
diff options
context:
space:
mode:
authornicedayzhu <[email protected]>2019-05-29 14:15:10 +0800
committerGitHub <[email protected]>2019-05-29 14:15:10 +0800
commitc10f087d9e477b18025889b07a40199b9dee011c (patch)
treeb402088ccd732db1a5d2b86941e5cb395d76cd11 /components/net
parent6454fa81d817e26d8c13698bb4e3ed597d95f296 (diff)
[Bugfix]Update netdev info after registered
修复ifconfig命令无法正确显示IP,网关,掩码的问题
Diffstat (limited to 'components/net')
-rw-r--r--components/net/lwip-1.4.1/src/netif/ethernetif.c18
1 files changed, 11 insertions, 7 deletions
diff --git a/components/net/lwip-1.4.1/src/netif/ethernetif.c b/components/net/lwip-1.4.1/src/netif/ethernetif.c
index 10bcaa0c95..df960fcde0 100644
--- a/components/net/lwip-1.4.1/src/netif/ethernetif.c
+++ b/components/net/lwip-1.4.1/src/netif/ethernetif.c
@@ -295,12 +295,6 @@ static int netdev_add(struct netif *lwip_netif)
return -ERR_IF;
}
- netdev->flags = lwip_netif->flags;
- netdev->mtu = lwip_netif->mtu;
- netdev->ops = &lwip_netdev_ops;
- netdev->hwaddr_len = lwip_netif->hwaddr_len;
- rt_memcpy(netdev->hwaddr, lwip_netif->hwaddr, lwip_netif->hwaddr_len);
-
#ifdef SAL_USING_LWIP
extern int sal_lwip_netdev_set_pf_info(struct netdev *netdev);
/* set the lwIP network interface device protocol family information */
@@ -309,7 +303,17 @@ static int netdev_add(struct netif *lwip_netif)
rt_strncpy(name, lwip_netif->name, LWIP_NETIF_NAME_LEN);
result = netdev_register(netdev, name, (void *)lwip_netif);
-
+
+ /* Update netdev info after registered */
+ netdev->flags = lwip_netif->flags;
+ netdev->mtu = lwip_netif->mtu;
+ netdev->ops = &lwip_netdev_ops;
+ netdev->hwaddr_len = lwip_netif->hwaddr_len;
+ rt_memcpy(netdev->hwaddr, lwip_netif->hwaddr, lwip_netif->hwaddr_len);
+ netdev->ip_addr = lwip_netif->ip_addr;
+ netdev->gw = lwip_netif->gw;
+ netdev->netmask = lwip_netif->netmask;
+
#ifdef RT_LWIP_DHCP
netdev_low_level_set_dhcp_status(netdev, RT_TRUE);
#endif