From 63dcaed0185e03d84cfeaf21170dadb5bac3b0c4 Mon Sep 17 00:00:00 2001 From: Amos Jeffries Date: Fri, 30 Nov 2012 06:19:14 -0700 Subject: [PATCH] squidclient: Better error checking * detect and report fstat() errors which could lead to invalid Content-Length being sent. * remove some useless checks which were causing false positives by Coverity. Detected by Coverity Scan. Issues 740334, 740379 --- tools/squidclient.cc | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/tools/squidclient.cc b/tools/squidclient.cc index 6d204743f0..5347cd0f8a 100644 --- a/tools/squidclient.cc +++ b/tools/squidclient.cc @@ -268,13 +268,11 @@ main(int argc, char *argv[]) break; case 'A': - if (optarg != NULL) - useragent = optarg; + useragent = optarg; break; case 'h': /* remote host */ - if (optarg != NULL) - hostname = optarg; + hostname = optarg; break; case 'j': @@ -282,13 +280,11 @@ main(int argc, char *argv[]) break; case 'V': - if (optarg != NULL) - version = optarg; + version = optarg; break; case 'l': /* local host */ - if (optarg != NULL) - localhost = optarg; + localhost = optarg; break; case 's': /* silent */ @@ -421,7 +417,9 @@ main(int argc, char *argv[]) setmode(put_fd, O_BINARY); #endif - fstat(put_fd, &sb); + if (fstat(put_fd, &sb) < 0) { + fprintf(stderr, "%s: can't identify length of file (%s)\n", argv[0], xstrerror()); + } } if (!host) { -- 2.47.2