From b5f75c122875b4212eb1a885d09bfdd63f537a19 Mon Sep 17 00:00:00 2001 From: Simon Wilkinson Date: Fri, 30 Mar 2012 19:14:38 +0100 Subject: [PATCH] libadmin: read returns an ssize_t, not a size_t size_t is unsigned, and therefore can never be less than 0. Using it as a return code from read() means that we never catch read errors. read() is defined as returning ssize_t, so just use this to capture its return code. Caught by clang's new error messages Change-Id: Ibf61119dec2c64fd4b1e16e6ef02178e427116f0 Reviewed-on: http://gerrit.openafs.org/7075 Reviewed-by: Derrick Brashear Tested-by: Derrick Brashear --- src/libadmin/bos/afs_bosAdmin.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/libadmin/bos/afs_bosAdmin.c b/src/libadmin/bos/afs_bosAdmin.c index dd17a7c..cbcf1df 100644 --- a/src/libadmin/bos/afs_bosAdmin.c +++ b/src/libadmin/bos/afs_bosAdmin.c @@ -2705,7 +2705,7 @@ bos_ExecutableCreate(const void *serverHandle, const char *sourceFile, while (1) { char tbuffer[512]; - size_t len; + ssize_t len; len = read(fd, tbuffer, sizeof(tbuffer)); if (len < 0) { tst = ADMBOSCANTREADSOURCEFILE; -- 1.9.4