git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH] Replaced read with xread in transport-helper.c to fix SSIZE_MAX overun in t5509

From
Randall S. Becker <rsbecker@nexbridge.com>
Date
Jan 11, 2018, 05:40 UTC
Message-ID
<010f01d38a9e$a5c4f290$f14ed7b0$@nexbridge.com>

This fix was needed on HPE NonStop NSE where SSIZE_MAX is less than BUFFERSIZE resulting in EINVAL. The call to read in transport-helper.c was the only place outside of wrapper.c.

Signed-off-by: Randall S. Becker <rsbecker@nexbridge.com>
---
 transport-helper.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/transport-helper.c b/transport-helper.c
index 3640804..68a4e30 100644
--- a/transport-helper.c
+++ b/transport-helper.c
@@ -1202,7 +1202,7 @@ static int udt_do_read(struct unidirectional_transfer *t)
                return 0;       /* No space for more. */

        transfer_debug("%s is readable", t->src_name);
-       bytes = read(t->src, t->buf + t->bufuse, BUFFERSIZE - t->bufuse);
+       bytes = xread(t->src, t->buf + t->bufuse, BUFFERSIZE - t->bufuse);
        if (bytes < 0 && errno != EWOULDBLOCK && errno != EAGAIN &&
                errno != EINTR) {
                error_errno("read(%s) failed", t->src_name);
--
2.8.5.23.g6fa7ec3
Next: Randall S. Becker
Message 1 of 6 in “Replaced read with xread in transport-helper.c to fix SSIZE_MAX overun in t5509”
  1. Replaced read with xread in transport-helper.c to fix SSIZE_MAX overun in t5509Randall S. Becker, Jan 11, 2018
  2. Randall S. BeckerJan 11, 2018
  3. Jeff KingJan 11, 2018
  4. Randall S. BeckerJan 11, 2018
  5. Jeff KingJan 11, 2018
  6. Randall S. BeckerJan 11, 2018

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.