diff mbox series

[1/1] kwbimage: check return value of image_get_csk_index

Message ID 20210817051158.13283-1-xypron.glpk@gmx.de
State Accepted
Commit f0317d788221828089fe54433cf5c502d748ef77
Delegated to: Stefan Roese
Headers show
Series [1/1] kwbimage: check return value of image_get_csk_index | expand

Commit Message

Heinrich Schuchardt Aug. 17, 2021, 5:11 a.m. UTC
image_get_csk_index() may return -1 in case of an error. Don't use this
value as index.

This resolves Coverity CID 338488
Memory - illegal accesses  (NEGATIVE_RETURNS)

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
---
 tools/kwbimage.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--
2.30.2

Comments

Stefan Roese Aug. 17, 2021, 6:47 a.m. UTC | #1
On 17.08.21 07:11, Heinrich Schuchardt wrote:
> image_get_csk_index() may return -1 in case of an error. Don't use this
> value as index.
> 
> This resolves Coverity CID 338488
> Memory - illegal accesses  (NEGATIVE_RETURNS)
> 
> Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>

Reviewed-by: Stefan Roese <sr@denx.de>

Thanks,
Stefan

> ---
>   tools/kwbimage.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/tools/kwbimage.c b/tools/kwbimage.c
> index 2a10df773b..bf7fd135ac 100644
> --- a/tools/kwbimage.c
> +++ b/tools/kwbimage.c
> @@ -1087,7 +1087,7 @@ int kwb_sign_csk_with_kak(struct image_tool_params *params,
>   	int csk_idx = image_get_csk_index();
>   	struct sig_v1 tmp_sig;
> 
> -	if (csk_idx >= 16) {
> +	if (csk_idx < 0 || csk_idx > 15) {
>   		fprintf(stderr, "Invalid CSK index %d\n", csk_idx);
>   		return 1;
>   	}
> --
> 2.30.2
> 


Viele Grüße,
Stefan
Pali Rohár Aug. 17, 2021, 8:31 a.m. UTC | #2
On Tuesday 17 August 2021 07:11:58 Heinrich Schuchardt wrote:
> image_get_csk_index() may return -1 in case of an error. Don't use this
> value as index.
> 
> This resolves Coverity CID 338488
> Memory - illegal accesses  (NEGATIVE_RETURNS)
> 
> Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>

Reviewed-by: Pali Rohár <pali@kernel.org>

> ---
>  tools/kwbimage.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/tools/kwbimage.c b/tools/kwbimage.c
> index 2a10df773b..bf7fd135ac 100644
> --- a/tools/kwbimage.c
> +++ b/tools/kwbimage.c
> @@ -1087,7 +1087,7 @@ int kwb_sign_csk_with_kak(struct image_tool_params *params,
>  	int csk_idx = image_get_csk_index();
>  	struct sig_v1 tmp_sig;
> 
> -	if (csk_idx >= 16) {
> +	if (csk_idx < 0 || csk_idx > 15) {
>  		fprintf(stderr, "Invalid CSK index %d\n", csk_idx);
>  		return 1;
>  	}
> --
> 2.30.2
>
Stefan Roese Sept. 1, 2021, 9:14 a.m. UTC | #3
On 17.08.21 07:11, Heinrich Schuchardt wrote:
> image_get_csk_index() may return -1 in case of an error. Don't use this
> value as index.
> 
> This resolves Coverity CID 338488
> Memory - illegal accesses  (NEGATIVE_RETURNS)
> 
> Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>

Applied to u-boot-marvell/master

Thanks,
Stefan

> ---
>   tools/kwbimage.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/tools/kwbimage.c b/tools/kwbimage.c
> index 2a10df773b..bf7fd135ac 100644
> --- a/tools/kwbimage.c
> +++ b/tools/kwbimage.c
> @@ -1087,7 +1087,7 @@ int kwb_sign_csk_with_kak(struct image_tool_params *params,
>   	int csk_idx = image_get_csk_index();
>   	struct sig_v1 tmp_sig;
> 
> -	if (csk_idx >= 16) {
> +	if (csk_idx < 0 || csk_idx > 15) {
>   		fprintf(stderr, "Invalid CSK index %d\n", csk_idx);
>   		return 1;
>   	}
> --
> 2.30.2
> 


Viele Grüße,
Stefan
diff mbox series

Patch

diff --git a/tools/kwbimage.c b/tools/kwbimage.c
index 2a10df773b..bf7fd135ac 100644
--- a/tools/kwbimage.c
+++ b/tools/kwbimage.c
@@ -1087,7 +1087,7 @@  int kwb_sign_csk_with_kak(struct image_tool_params *params,
 	int csk_idx = image_get_csk_index();
 	struct sig_v1 tmp_sig;

-	if (csk_idx >= 16) {
+	if (csk_idx < 0 || csk_idx > 15) {
 		fprintf(stderr, "Invalid CSK index %d\n", csk_idx);
 		return 1;
 	}