64 memset ( hctx->pad, 0, sizeof ( hctx->pad ) );
65 if ( key_len <=
sizeof ( hctx->pad ) ) {
72 for ( i = 0 ; i <
sizeof ( hctx->pad ) ; i++ ) {
78 digest_update ( digest, hctx->ctx, hctx->pad, sizeof ( hctx->pad ) );
93 for ( i = 0 ; i <
sizeof ( hctx->pad ) ; i++ ) {
102 digest_update ( digest, hctx->ctx, hctx->pad, sizeof ( hctx->pad ) );
107 memset ( hctx->pad, 0, sizeof ( hctx->pad ) );
void hmac_init(struct digest_algorithm *digest, void *ctx, const void *key, size_t key_len)
Initialise HMAC.
static void digest_update(struct digest_algorithm *digest, void *ctx, const void *data, size_t len)
#define hmac_context_t(digest)
HMAC context type.
static void digest_final(struct digest_algorithm *digest, void *ctx, void *out)
struct golan_eq_context ctx
void * memcpy(void *dest, const void *src, size_t len) __nonnull
FILE_LICENCE(GPL2_OR_LATER_OR_UBDL)
Keyed-Hashing for Message Authentication.
static void digest_init(struct digest_algorithm *digest, void *ctx)
size_t digestsize
Digest size.
A message digest algorithm.
void hmac_final(struct digest_algorithm *digest, void *ctx, void *hmac)
Finalise HMAC.
void * memset(void *dest, int character, size_t len) __nonnull