You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nuttx.apache.org by xi...@apache.org on 2021/01/29 08:05:14 UTC

[incubator-nuttx] 02/03: net: tcp: Add DEBUGASSERT() in psock_tcp_send()

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

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

commit ec8bf5c8c12e1784e619b090b87ca567b199ec71
Author: Masayuki Ishikawa <ma...@gmail.com>
AuthorDate: Fri Jan 29 13:34:52 2021 +0900

    net: tcp: Add DEBUGASSERT() in psock_tcp_send()
    
    Summary:
    - This commit adds DEBUGASSERT() to check the IOB size
    
    Impact:
    - None
    
    Testing:
    - Tested with sabre-6quad:netnsh with QEMU
    
    Signed-off-by: Masayuki Ishikawa <Ma...@jp.sony.com>
---
 net/tcp/tcp_send_buffered.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/net/tcp/tcp_send_buffered.c b/net/tcp/tcp_send_buffered.c
index 51c36a6..f99c748 100644
--- a/net/tcp/tcp_send_buffered.c
+++ b/net/tcp/tcp_send_buffered.c
@@ -1144,6 +1144,11 @@ ssize_t psock_tcp_send(FAR struct socket *psock, FAR const void *buf,
            */
 
           blresult = net_breaklock(&count);
+
+          /* NOTE: At least IOB needs to hold the packet */
+
+          DEBUGASSERT((CONFIG_IOB_NBUFFERS * CONFIG_IOB_BUFSIZE) > len);
+
           result = TCP_WBCOPYIN(wrb, (FAR uint8_t *)buf, len);
           if (blresult >= 0)
             {