Commit 1f6c8a57 authored by Mario Six's avatar Mario Six Committed by Stefan Roese

tools: kwbimage: Fix unchecked return value and fd leak

The return value of fstat was not checked in kwbimage, and in the case
of an error, the already open file was not closed. Fix both errors.

Reported-by: Coverity (CID: 155971)
Reported-by: Coverity (CID: 155969)
Signed-off-by: default avatarMario Six <mario.six@gdsys.cc>
Signed-off-by: default avatarStefan Roese <sr@denx.de>
parent 85d0bea1
......@@ -992,7 +992,11 @@ int add_binary_header_v1(uint8_t *cur)
return -1;
}
fstat(fileno(bin), &s);
if (fstat(fileno(bin), &s)) {
fprintf(stderr, "Cannot stat binary file %s\n",
binarye->binary.file);
goto err_close;
}
binhdrsz = sizeof(struct opt_hdr_v1) +
(binarye->binary.nargs + 2) * sizeof(uint32_t) +
......@@ -1022,7 +1026,7 @@ int add_binary_header_v1(uint8_t *cur)
fprintf(stderr,
"Could not read binary image %s\n",
binarye->binary.file);
return -1;
goto err_close;
}
fclose(bin);
......@@ -1040,6 +1044,11 @@ int add_binary_header_v1(uint8_t *cur)
cur += sizeof(uint32_t);
return 0;
err_close:
fclose(bin);
return -1;
}
#if defined(CONFIG_KWB_SECURE)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment