You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nuttx.apache.org by pk...@apache.org on 2023/01/26 22:38:39 UTC

[nuttx] branch master updated: usrsock: only TCP data should be aggregrated for rpmsg case

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

pkarashchenko pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nuttx.git


The following commit(s) were added to refs/heads/master by this push:
     new 7b8ef5dc1b usrsock: only TCP data should be aggregrated for rpmsg case
7b8ef5dc1b is described below

commit 7b8ef5dc1b1680a072d76198694940ede7ecb43d
Author: 梁超众 <li...@xiaomi.com>
AuthorDate: Tue Jan 10 18:31:35 2023 +0800

    usrsock: only TCP data should be aggregrated for rpmsg case
    
    non-streaming socket's rx data should not be aggregrated.
    
    Signed-off-by: 梁超众 <li...@xiaomi.com>
---
 drivers/usrsock/usrsock_rpmsg_server.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/usrsock/usrsock_rpmsg_server.c b/drivers/usrsock/usrsock_rpmsg_server.c
index 56d423efcb..7a56382349 100644
--- a/drivers/usrsock/usrsock_rpmsg_server.c
+++ b/drivers/usrsock/usrsock_rpmsg_server.c
@@ -533,7 +533,8 @@ static int usrsock_rpmsg_recvfrom_handler(FAR struct rpmsg_endpoint *ept,
               outaddrlen ? (FAR struct sockaddr *)(ack + 1) : NULL,
               outaddrlen ? &outaddrlen : NULL);
       totlen = ret;
-      if (ret > 0)
+      if (ret > 0 && (priv->socks[req->usockid].s_type & SOCK_TYPE_MASK) ==
+                      SOCK_STREAM)
         {
           if (outaddrlen < inaddrlen)
             {