diff mbox series

efi_loader: simplify tcg2_create_digest()

Message ID 20210422113214.42079-1-ilias.apalodimas@linaro.org
State Accepted
Commit 6fe8b4a39d0ddb6cf6de35ab3e1b522ec0824575
Headers show
Series efi_loader: simplify tcg2_create_digest() | expand

Commit Message

Ilias Apalodimas April 22, 2021, 11:32 a.m. UTC
Bumping the digest list count, for all supported algorithms,  can be
calculated outside of the individual switch statements.  So let's do that
for every loop iteration instead and simplify the code a bit.

Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>

---
 lib/efi_loader/efi_tcg2.c | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

-- 
2.31.0

Comments

Heinrich Schuchardt April 22, 2021, noon UTC | #1
On 22.04.21 13:32, Ilias Apalodimas wrote:
> Bumping the digest list count, for all supported algorithms,  can be

> calculated outside of the individual switch statements.  So let's do that

> for every loop iteration instead and simplify the code a bit.

>

> Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>


Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de>


> ---

>  lib/efi_loader/efi_tcg2.c | 5 +----

>  1 file changed, 1 insertion(+), 4 deletions(-)

>

> diff --git a/lib/efi_loader/efi_tcg2.c b/lib/efi_loader/efi_tcg2.c

> index d5eca68769b0..94e8f22bbb69 100644

> --- a/lib/efi_loader/efi_tcg2.c

> +++ b/lib/efi_loader/efi_tcg2.c

> @@ -535,30 +535,27 @@ static efi_status_t tcg2_create_digest(const u8 *input, u32 length,

>  			sha1_starts(&ctx);

>  			sha1_update(&ctx, input, length);

>  			sha1_finish(&ctx, final);

> -			digest_list->count++;

>  			break;

>  		case TPM2_ALG_SHA256:

>  			sha256_starts(&ctx_256);

>  			sha256_update(&ctx_256, input, length);

>  			sha256_finish(&ctx_256, final);

> -			digest_list->count++;

>  			break;

>  		case TPM2_ALG_SHA384:

>  			sha384_starts(&ctx_512);

>  			sha384_update(&ctx_512, input, length);

>  			sha384_finish(&ctx_512, final);

> -			digest_list->count++;

>  			break;

>  		case TPM2_ALG_SHA512:

>  			sha512_starts(&ctx_512);

>  			sha512_update(&ctx_512, input, length);

>  			sha512_finish(&ctx_512, final);

> -			digest_list->count++;

>  			break;

>  		default:

>  			EFI_PRINT("Unsupported algorithm %x\n", hash_alg);

>  			return EFI_INVALID_PARAMETER;

>  		}

> +		digest_list->count++;

>  		digest_list->digests[i].hash_alg = hash_alg;

>  		memcpy(&digest_list->digests[i].digest, final, (u32)alg_to_len(hash_alg));

>  	}

>
diff mbox series

Patch

diff --git a/lib/efi_loader/efi_tcg2.c b/lib/efi_loader/efi_tcg2.c
index d5eca68769b0..94e8f22bbb69 100644
--- a/lib/efi_loader/efi_tcg2.c
+++ b/lib/efi_loader/efi_tcg2.c
@@ -535,30 +535,27 @@  static efi_status_t tcg2_create_digest(const u8 *input, u32 length,
 			sha1_starts(&ctx);
 			sha1_update(&ctx, input, length);
 			sha1_finish(&ctx, final);
-			digest_list->count++;
 			break;
 		case TPM2_ALG_SHA256:
 			sha256_starts(&ctx_256);
 			sha256_update(&ctx_256, input, length);
 			sha256_finish(&ctx_256, final);
-			digest_list->count++;
 			break;
 		case TPM2_ALG_SHA384:
 			sha384_starts(&ctx_512);
 			sha384_update(&ctx_512, input, length);
 			sha384_finish(&ctx_512, final);
-			digest_list->count++;
 			break;
 		case TPM2_ALG_SHA512:
 			sha512_starts(&ctx_512);
 			sha512_update(&ctx_512, input, length);
 			sha512_finish(&ctx_512, final);
-			digest_list->count++;
 			break;
 		default:
 			EFI_PRINT("Unsupported algorithm %x\n", hash_alg);
 			return EFI_INVALID_PARAMETER;
 		}
+		digest_list->count++;
 		digest_list->digests[i].hash_alg = hash_alg;
 		memcpy(&digest_list->digests[i].digest, final, (u32)alg_to_len(hash_alg));
 	}