]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
sha1: Remove sha1 non-watchdog API
authorRaymond Mao <raymond.mao@linaro.org>
Thu, 3 Oct 2024 21:50:18 +0000 (14:50 -0700)
committerTom Rini <trini@konsulko.com>
Mon, 14 Oct 2024 23:58:30 +0000 (17:58 -0600)
We don't need an API specially for non-watchdog since sha1_csum_wd
supports it by disabling CONFIG_HW_WATCHDOG and CONFIG_WATCHDOG.
Set 0x10000 as default chunk size for SHA1.

Signed-off-by: Raymond Mao <raymond.mao@linaro.org>
Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
board/gdsys/a38x/hre.c
include/u-boot/sha1.h
lib/sha1.c
lib/tpm-v1.c

index f303793b63b70eaec5fa437b1f1a2cb675b73800..06856ea36d38c5b480c5f38140ff13ef3dfe22f5 100644 (file)
@@ -166,7 +166,7 @@ static int find_key(struct udevice *tpm, const uint8_t auth[20],
                        return -1;
                if (err)
                        continue;
-               sha1_csum(buf, buf_len, digest);
+               sha1_csum_wd(buf, buf_len, digest, SHA1_DEF_CHUNK_SZ);
                if (!memcmp(digest, pubkey_digest, 20)) {
                        *handle = key_handles[i];
                        return 0;
index ab88134fb988998fbb987c7b6341fab6a2371b03..36c3db15e2240c62b841f959688bd4dfcf956dbc 100644 (file)
@@ -39,6 +39,8 @@ extern "C" {
 #define SHA1_SUM_LEN   20
 #define SHA1_DER_LEN   15
 
+#define SHA1_DEF_CHUNK_SZ 0x10000
+
 extern const uint8_t sha1_der_prefix[];
 
 #if defined(CONFIG_MBEDTLS_LIB_CRYPTO)
@@ -81,16 +83,6 @@ void sha1_update(sha1_context *ctx, const unsigned char *input,
  */
 void sha1_finish( sha1_context *ctx, unsigned char output[20] );
 
-/**
- * \brief         Output = SHA-1( input buffer )
- *
- * \param input    buffer holding the  data
- * \param ilen    length of the input data
- * \param output   SHA-1 checksum result
- */
-void sha1_csum(const unsigned char *input, unsigned int ilen,
-               unsigned char *output);
-
 /**
  * \brief         Output = SHA-1( input buffer ), with watchdog triggering
  *
index 7ef536f4b5dbf1b146bad8b7ed61ed335e3dd147..81412283b490ca3b2ff87a70295029a3b738ec07 100644 (file)
@@ -304,19 +304,6 @@ void sha1_finish (sha1_context * ctx, unsigned char output[20])
        PUT_UINT32_BE (ctx->state[4], output, 16);
 }
 
-/*
- * Output = SHA-1( input buffer )
- */
-void sha1_csum(const unsigned char *input, unsigned int ilen,
-              unsigned char *output)
-{
-       sha1_context ctx;
-
-       sha1_starts (&ctx);
-       sha1_update (&ctx, input, ilen);
-       sha1_finish (&ctx, output);
-}
-
 /*
  * Output = SHA-1( input buffer ). Trigger the watchdog every 'chunk_sz'
  * bytes of input processed.
index e66023da5e67e6ee1faea5909b147d06b46a9e9d..a6727c575fdd1286d43c748bd64a69fc9e871827 100644 (file)
@@ -871,7 +871,7 @@ u32 tpm1_find_key_sha1(struct udevice *dev, const u8 auth[20],
                        return -1;
                if (err)
                        continue;
-               sha1_csum(buf, buf_len, digest);
+               sha1_csum_wd(buf, buf_len, digest, SHA1_DEF_CHUNK_SZ);
                if (!memcmp(digest, pubkey_digest, 20)) {
                        *handle = key_handles[i];
                        return 0;