2015-12-07 21:25:55

by Tom Rini

[permalink] [raw]
Subject: [PATCH] kbuild: fixdep: Check fstat(2) return value

Coverity has recently added a check that will find when we don't check
the return code from fstat(2). Copy/paste the checking logic that
print_deps() has with an appropriate re-wording of the perror() message.

Cc: Michal Marek <[email protected]>
Cc: [email protected]
Cc: [email protected]
Signed-off-by: Tom Rini <[email protected]>

---
Note that I don't have a CID here was I found this in U-Boot and the
kernel hasn't yet done a build with this test being enabled.
---
scripts/basic/fixdep.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/scripts/basic/fixdep.c b/scripts/basic/fixdep.c
index c68fd61..e3d9678 100644
--- a/scripts/basic/fixdep.c
+++ b/scripts/basic/fixdep.c
@@ -274,7 +274,11 @@ static void do_config_file(const char *filename)
perror(filename);
exit(2);
}
- fstat(fd, &st);
+ if (fstat(fd, &st) < 0) {
+ fprintf(stderr, "fixdep: error fstat'ing config file: ");
+ perror(filename);
+ exit(2);
+ }
if (st.st_size == 0) {
close(fd);
return;
--
1.7.9.5