1
0
mirror of https://xff.cz/git/u-boot/ synced 2025-09-02 09:12:08 +02:00

hash: Drop some #ifdefs in hash.c

We can use the __maybe_unused attribute to avoid some of the #ifdefs in
this file. Update the functions accordingly.

Note: The actual hashing interface is still a mess, with four separate
combinations and lots of #ifdefs. This should really use a driver
approach, e.g. as is done with partition drivers.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
This commit is contained in:
Simon Glass
2021-09-25 19:43:19 -06:00
committed by Tom Rini
parent 2c21256b27
commit d54f7e3f23

View File

@@ -24,6 +24,7 @@
#include <u-boot/crc.h> #include <u-boot/crc.h>
#else #else
#include "mkimage.h" #include "mkimage.h"
#include <linux/compiler_attributes.h>
#include <time.h> #include <time.h>
#include <linux/kconfig.h> #include <linux/kconfig.h>
#endif /* !USE_HOSTCC*/ #endif /* !USE_HOSTCC*/
@@ -42,8 +43,7 @@ DECLARE_GLOBAL_DATA_PTR;
static void reloc_update(void); static void reloc_update(void);
#if CONFIG_IS_ENABLED(SHA1) && !CONFIG_IS_ENABLED(SHA_PROG_HW_ACCEL) static int __maybe_unused hash_init_sha1(struct hash_algo *algo, void **ctxp)
static int hash_init_sha1(struct hash_algo *algo, void **ctxp)
{ {
sha1_context *ctx = malloc(sizeof(sha1_context)); sha1_context *ctx = malloc(sizeof(sha1_context));
sha1_starts(ctx); sha1_starts(ctx);
@@ -51,15 +51,16 @@ static int hash_init_sha1(struct hash_algo *algo, void **ctxp)
return 0; return 0;
} }
static int hash_update_sha1(struct hash_algo *algo, void *ctx, const void *buf, static int __maybe_unused hash_update_sha1(struct hash_algo *algo, void *ctx,
unsigned int size, int is_last) const void *buf, unsigned int size,
int is_last)
{ {
sha1_update((sha1_context *)ctx, buf, size); sha1_update((sha1_context *)ctx, buf, size);
return 0; return 0;
} }
static int hash_finish_sha1(struct hash_algo *algo, void *ctx, void *dest_buf, static int __maybe_unused hash_finish_sha1(struct hash_algo *algo, void *ctx,
int size) void *dest_buf, int size)
{ {
if (size < algo->digest_size) if (size < algo->digest_size)
return -1; return -1;
@@ -68,10 +69,8 @@ static int hash_finish_sha1(struct hash_algo *algo, void *ctx, void *dest_buf,
free(ctx); free(ctx);
return 0; return 0;
} }
#endif
#if CONFIG_IS_ENABLED(SHA256) && !CONFIG_IS_ENABLED(SHA_PROG_HW_ACCEL) static int __maybe_unused hash_init_sha256(struct hash_algo *algo, void **ctxp)
static int hash_init_sha256(struct hash_algo *algo, void **ctxp)
{ {
sha256_context *ctx = malloc(sizeof(sha256_context)); sha256_context *ctx = malloc(sizeof(sha256_context));
sha256_starts(ctx); sha256_starts(ctx);
@@ -79,15 +78,16 @@ static int hash_init_sha256(struct hash_algo *algo, void **ctxp)
return 0; return 0;
} }
static int hash_update_sha256(struct hash_algo *algo, void *ctx, static int __maybe_unused hash_update_sha256(struct hash_algo *algo, void *ctx,
const void *buf, unsigned int size, int is_last) const void *buf, uint size,
int is_last)
{ {
sha256_update((sha256_context *)ctx, buf, size); sha256_update((sha256_context *)ctx, buf, size);
return 0; return 0;
} }
static int hash_finish_sha256(struct hash_algo *algo, void *ctx, void static int __maybe_unused hash_finish_sha256(struct hash_algo *algo, void *ctx,
*dest_buf, int size) void *dest_buf, int size)
{ {
if (size < algo->digest_size) if (size < algo->digest_size)
return -1; return -1;
@@ -96,10 +96,8 @@ static int hash_finish_sha256(struct hash_algo *algo, void *ctx, void
free(ctx); free(ctx);
return 0; return 0;
} }
#endif
#if CONFIG_IS_ENABLED(SHA384) && !CONFIG_IS_ENABLED(SHA_PROG_HW_ACCEL) static int __maybe_unused hash_init_sha384(struct hash_algo *algo, void **ctxp)
static int hash_init_sha384(struct hash_algo *algo, void **ctxp)
{ {
sha512_context *ctx = malloc(sizeof(sha512_context)); sha512_context *ctx = malloc(sizeof(sha512_context));
sha384_starts(ctx); sha384_starts(ctx);
@@ -107,15 +105,16 @@ static int hash_init_sha384(struct hash_algo *algo, void **ctxp)
return 0; return 0;
} }
static int hash_update_sha384(struct hash_algo *algo, void *ctx, static int __maybe_unused hash_update_sha384(struct hash_algo *algo, void *ctx,
const void *buf, unsigned int size, int is_last) const void *buf, uint size,
int is_last)
{ {
sha384_update((sha512_context *)ctx, buf, size); sha384_update((sha512_context *)ctx, buf, size);
return 0; return 0;
} }
static int hash_finish_sha384(struct hash_algo *algo, void *ctx, void static int __maybe_unused hash_finish_sha384(struct hash_algo *algo, void *ctx,
*dest_buf, int size) void *dest_buf, int size)
{ {
if (size < algo->digest_size) if (size < algo->digest_size)
return -1; return -1;
@@ -124,10 +123,8 @@ static int hash_finish_sha384(struct hash_algo *algo, void *ctx, void
free(ctx); free(ctx);
return 0; return 0;
} }
#endif
#if CONFIG_IS_ENABLED(SHA512) && !CONFIG_IS_ENABLED(SHA_PROG_HW_ACCEL) static int __maybe_unused hash_init_sha512(struct hash_algo *algo, void **ctxp)
static int hash_init_sha512(struct hash_algo *algo, void **ctxp)
{ {
sha512_context *ctx = malloc(sizeof(sha512_context)); sha512_context *ctx = malloc(sizeof(sha512_context));
sha512_starts(ctx); sha512_starts(ctx);
@@ -135,15 +132,16 @@ static int hash_init_sha512(struct hash_algo *algo, void **ctxp)
return 0; return 0;
} }
static int hash_update_sha512(struct hash_algo *algo, void *ctx, static int __maybe_unused hash_update_sha512(struct hash_algo *algo, void *ctx,
const void *buf, unsigned int size, int is_last) const void *buf, uint size,
int is_last)
{ {
sha512_update((sha512_context *)ctx, buf, size); sha512_update((sha512_context *)ctx, buf, size);
return 0; return 0;
} }
static int hash_finish_sha512(struct hash_algo *algo, void *ctx, void static int __maybe_unused hash_finish_sha512(struct hash_algo *algo, void *ctx,
*dest_buf, int size) void *dest_buf, int size)
{ {
if (size < algo->digest_size) if (size < algo->digest_size)
return -1; return -1;
@@ -152,8 +150,6 @@ static int hash_finish_sha512(struct hash_algo *algo, void *ctx, void
free(ctx); free(ctx);
return 0; return 0;
} }
#endif
static int hash_init_crc16_ccitt(struct hash_algo *algo, void **ctxp) static int hash_init_crc16_ccitt(struct hash_algo *algo, void **ctxp)
{ {