From 9e031df11da6d7b31dbbe388c839cb76060a5a98 Mon Sep 17 00:00:00 2001 From: Ronnie Sahlberg Date: Tue, 5 Feb 2019 13:18:11 +1000 Subject: [PATCH] check return for write() in one of the test tools Signed-off-by: Ronnie Sahlberg --- tests/prog_open_read.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/tests/prog_open_read.c b/tests/prog_open_read.c index 2064204..e47c845 100644 --- a/tests/prog_open_read.c +++ b/tests/prog_open_read.c @@ -43,7 +43,7 @@ int main(int argc, char *argv[]) struct nfs_context *nfs = NULL; struct nfs_url *url = NULL; int ret = 0; - int flags = 0, count; + int flags = 0, count, res, pos; struct nfsfh *fh; char buf[1024]; @@ -111,7 +111,17 @@ int main(int argc, char *argv[]) goto finished; } - write(1, buf, count); + pos = 0; + while (count) { + res = write(1, &buf[pos], count); + if (res < 0) { + fprintf(stderr, "write() failed\n"); + ret = 1; + goto finished; + } + count -= res; + pos += res; + } if (nfs_close(nfs, fh)) { fprintf(stderr, "Failed to close(): %s\n",