Explorar o código

1、解决do_pollfd函数中处理底层网络设备返回错误-1的情况,返回-1时select函数也要返回-1 …
2、网卡设备调用关闭dhcp时,底层要调用dhcp_stop函数来关闭dhcp功能,打开时再调用dhcp_start,否则再次打开dhcp时无法获取ip地址或者出现在使用静态ip地址会在dhcp租约到期时自动再获取ip地址。
3、sal_socket.c程序中的sal_accept函数增加判断网卡up,down的功能
4、修改注释信息

longtengmcu %!s(int64=5) %!d(string=hai) anos
pai
achega
d75f03e4b0

+ 2 - 2
components/dfs/src/poll.c

@@ -138,7 +138,7 @@ static int do_pollfd(struct pollfd *pollfd, rt_pollreq_t *req)
 
                 mask = f->fops->poll(f, req);
 
-                /* dealwith the device return error -1 zhaoshimin 20200509*/
+                /* dealwith the device return error -1*/
                 if (mask < 0)
                 {   
                     fd_put(f);
@@ -180,7 +180,7 @@ static int poll_do(struct pollfd *fds, nfds_t nfds, struct rt_poll_table *pt, in
             ret = do_pollfd(pf, &pt->req);
             if(ret < 0)
             {
-                /*dealwith the device return error -1  zhaoshimin 20200509*/
+                /*dealwith the device return error -1  */
                 pt->req._proc = RT_NULL;
                 return ret;
             }

+ 9 - 9
components/net/lwip-2.0.2/src/netif/ethernetif.c

@@ -165,15 +165,15 @@ static int lwip_netdev_set_dhcp(struct netdev *netif, rt_bool_t is_enabled)
 {
     netdev_low_level_set_dhcp_status(netif, is_enabled);
 
-	/*zhaoshimin 20200508 add dhcp start or stop must call dhcp_start and dhcp_stop function*/
-	if(is_enabled == RT_TRUE)
-	{
-		dhcp_start((struct netif *)netif->user_data);
-	}
-	else
-	{
-		dhcp_stop((struct netif *)netif->user_data);	
-	}
+    /*add dhcp start or stop must call dhcp_start and dhcp_stop function*/
+    if(is_enabled == RT_TRUE)
+    {
+        dhcp_start((struct netif *)netif->user_data);
+    }
+    else
+    {
+        dhcp_stop((struct netif *)netif->user_data);    
+    }
     return ERR_OK;
 }
 #endif /* RT_LWIP_DHCP */

+ 1 - 1
components/net/sal_socket/src/sal_socket.c

@@ -564,7 +564,7 @@ int sal_accept(int socket, struct sockaddr *addr, socklen_t *addrlen)
     /* get the socket object by socket descriptor */
     SAL_SOCKET_OBJ_GET(sock, socket);
 
-	/* check the network interface is up status  zhaoshimin add 20200509*/
+    /* check the network interface is up status */
     SAL_NETDEV_IS_UP(sock->netdev);
 
     /* check the network interface socket operations */