[Bugfix]Update netdev info after registered

修复ifconfig命令无法正确显示IP,网关,掩码的问题
This commit is contained in:
nicedayzhu 2019-05-29 13:42:06 +08:00 committed by GitHub
parent f5cb3ac760
commit 6454fa81d8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 10 additions and 5 deletions

View File

@ -303,11 +303,6 @@ static int netdev_add(struct netif *lwip_netif)
{ {
return -ERR_IF; return -ERR_IF;
} }
netdev->flags = lwip_netif->flags;
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 #ifdef SAL_USING_LWIP
extern int sal_lwip_netdev_set_pf_info(struct netdev *netdev); extern int sal_lwip_netdev_set_pf_info(struct netdev *netdev);
@ -317,6 +312,16 @@ static int netdev_add(struct netif *lwip_netif)
rt_strncpy(name, lwip_netif->name, LWIP_NETIF_NAME_LEN); rt_strncpy(name, lwip_netif->name, LWIP_NETIF_NAME_LEN);
result = netdev_register(netdev, name, (void *)lwip_netif); 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 #ifdef RT_LWIP_DHCP
netdev_low_level_set_dhcp_status(netdev, RT_TRUE); netdev_low_level_set_dhcp_status(netdev, RT_TRUE);