]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
efi_loader: simplify tcg2_create_digest()
authorIlias Apalodimas <ilias.apalodimas@linaro.org>
Thu, 22 Apr 2021 11:32:14 +0000 (14:32 +0300)
committerHeinrich Schuchardt <xypron.glpk@gmx.de>
Sat, 24 Apr 2021 04:53:40 +0000 (06:53 +0200)
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

index d5eca68769b00b55a3c302dca6ced0382018208d..94e8f22bbb6913fd15c3af26f0954288096e09f2 100644 (file)
@@ -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));
        }