tools: check result of lseek

Return value of function 'lseek', called at pblimage.c:211,
is not checked, but it is usually checked for this function.

This trigger was found using the Svace static analyzer.

Signed-off-by: Maks Mishin <maks.mishinFZ@gmail.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
This commit is contained in:
Maks Mishin 2025-01-22 19:15:04 +03:00 committed by Tom Rini
parent 6121676720
commit f55fa90a95

View file

@ -188,7 +188,7 @@ static void add_end_cmd(void)
void pbl_load_uboot(int ifd, struct image_tool_params *params) void pbl_load_uboot(int ifd, struct image_tool_params *params)
{ {
FILE *fp_uboot; FILE *fp_uboot;
int size; int size, ret;
/* parse the rcw.cfg file. */ /* parse the rcw.cfg file. */
pbl_parser(params->imagename); pbl_parser(params->imagename);
@ -208,7 +208,12 @@ void pbl_load_uboot(int ifd, struct image_tool_params *params)
fclose(fp_uboot); fclose(fp_uboot);
} }
add_end_cmd(); add_end_cmd();
lseek(ifd, 0, SEEK_SET); ret = lseek(ifd, 0, SEEK_SET);
if (ret < 0) {
fprintf(stderr, "%s: lseek error %s\n",
__func__, strerror(errno));
exit(EXIT_FAILURE);
}
size = pbl_size; size = pbl_size;
if (write(ifd, (const void *)&mem_buf, size) != size) { if (write(ifd, (const void *)&mem_buf, size) != size) {