15#define hmac_key_t( digest ) struct { \
17 uint8_t pad[ digest->blocksize ]; \
18 } __attribute__ (( packed ))
21#define hmac_context_t( digest ) struct { \
23 uint8_t ctx[ digest->ctxsize ]; \
25 uint8_t pad[ digest->blocksize ]; \
26 } __attribute__ (( packed ))
38 return sizeof ( hkey->pad );
51 return sizeof ( *hctx );
63 const void *
data,
size_t len ) {
70 const void *secret,
size_t len,
void *
key );
74 const void *secret,
size_t len );
struct golan_eq_context ctx
union @162305117151260234136356364136041353210355154177 key
uint8_t data[48]
Additional event data.
#define FILE_LICENCE(_licence)
Declare a particular licence as applying to a file.
#define FILE_SECBOOT(_status)
Declare a file's UEFI Secure Boot permission status.
void hmac_init(struct digest_algorithm *digest, void *ctx, const void *secret, size_t len)
Initialise HMAC.
static void hmac_update(struct digest_algorithm *digest, void *ctx, const void *data, size_t len)
Update HMAC.
#define hmac_key_t(digest)
HMAC reduced key type.
static size_t hmac_ctxsize(struct digest_algorithm *digest)
Calculate HMAC context size.
static size_t hmac_keysize(struct digest_algorithm *digest)
Calculate HMAC reduced key size.
void hmac_final(struct digest_algorithm *digest, void *ctx, void *hmac)
Finalise HMAC.
void hmac_key(struct digest_algorithm *digest, void *ctx, const void *secret, size_t len, void *key)
Construct HMAC reduced key.
void hmac_init_key(struct digest_algorithm *digest, void *ctx, const void *key)
Initialise HMAC from reduced key.
#define hmac_context_t(digest)
HMAC context type.
static void digest_update(struct digest_algorithm *digest, void *ctx, const void *data, size_t len)
A message digest algorithm.