You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nuttx.apache.org by ma...@apache.org on 2022/10/14 02:39:47 UTC

[incubator-nuttx-apps] 01/03: usrsock_server: fix unblock socket connect error

This is an automated email from the ASF dual-hosted git repository.

masayuki pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-nuttx-apps.git

commit 8a2f29c9b5415846de5b7cf6407af68196830407
Author: zhanghongyu <zh...@xiaomi.com>
AuthorDate: Mon Aug 29 22:53:20 2022 +0800

    usrsock_server: fix unblock socket connect error
    
    Signed-off-by: zhanghongyu <zh...@xiaomi.com>
---
 netutils/usrsock_rpmsg/usrsock_rpmsg_server.c | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/netutils/usrsock_rpmsg/usrsock_rpmsg_server.c b/netutils/usrsock_rpmsg/usrsock_rpmsg_server.c
index 6cd3c8b32..46b8f0c43 100644
--- a/netutils/usrsock_rpmsg/usrsock_rpmsg_server.c
+++ b/netutils/usrsock_rpmsg/usrsock_rpmsg_server.c
@@ -178,7 +178,7 @@ static int usrsock_rpmsg_send_ack(struct rpmsg_endpoint *ept,
   ack.head.events = events;
 
   ack.xid    = xid;
-  ack.result = result;
+  ack.result = result == -EINPROGRESS ? 0 : result;
 
   return rpmsg_send(ept, &ack, sizeof(ack));
 }
@@ -317,14 +317,15 @@ static int usrsock_rpmsg_connect_handler(struct rpmsg_endpoint *ept,
     {
       ret = psock_connect(&priv->socks[req->usockid],
               (const struct sockaddr *)(req + 1), req->addrlen);
-      if (ret == -EINPROGRESS)
-        {
-          inprogress = true;
-          ret = 0;
-        }
     }
 
   retr = usrsock_rpmsg_send_ack(ept, 0, req->head.xid, ret);
+  if (ret == -EINPROGRESS)
+    {
+      inprogress = true;
+      ret = 0;
+    }
+
   if (retr >= 0 && ret >= 0 && priv->pfds[req->usockid].ptr == NULL)
     {
       pthread_mutex_lock(&priv->mutex);