fix local_sendmsg return length

Signed-off-by: Peter Bee <bijunda1@xiaomi.com>
This commit is contained in:
Peter Bee 2021-03-12 15:33:16 +08:00 committed by Xiang Xiao
parent d28962bbc0
commit 6f995e377c
2 changed files with 4 additions and 13 deletions

View File

@ -92,15 +92,6 @@ static ssize_t local_send(FAR struct socket *psock,
/* Send the packet */ /* Send the packet */
ret = local_send_packet(&peer->lc_outfile, buf, len); ret = local_send_packet(&peer->lc_outfile, buf, len);
/* If the send was successful, then the full packet will have been
* sent
*/
if (ret >= 0)
{
ret = len;
}
} }
break; break;
#endif /* CONFIG_NET_LOCAL_STREAM */ #endif /* CONFIG_NET_LOCAL_STREAM */

View File

@ -120,8 +120,8 @@ static int local_fifo_write(FAR struct file *filep, FAR const uint8_t *buf,
* len Length of data to send * len Length of data to send
* *
* Returned Value: * Returned Value:
* Zero is returned on success; a negated errno value is returned on any * Packet length is returned on success; a negated errno value is returned
* failure. * on any failure.
* *
****************************************************************************/ ****************************************************************************/
@ -158,10 +158,10 @@ int local_send_packet(FAR struct file *filep, FAR const struct iovec *buf,
if (ret < 0) if (ret < 0)
break; break;
else else
len16 += ret; len16 += iov->iov_len;
} }
if (ret > 0) if (ret == OK)
ret = len16; ret = len16;
} }
} }