[PATCH v4 1/4] transport-helper: use xread instead of read
- From
- randall.s.becker@rogers.com <randall.s.becker@rogers.com>
- Date
- Dec 28, 2018, 23:35 UTC
- Message-ID
- <20181228233556.5704-1-randall.s.becker@rogers.com>
From: "Randall S. Becker" <rsbecker@nexbridge.com>
This fix was needed on HPE NonStop NSE and NSX 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 where it is used instead of xread.
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 bf225c698f..a290695a12 100644 --- a/transport-helper.c +++ b/transport-helper.c @@ -1225,7 +1225,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) { + if (bytes < 0 && errno != EINTR) { error_errno(_("read(%s) failed"), t->src_name);
-- 2.17.0.10.gb132f7033