AES_GMAC_CTX
AES_GMAC_CTX aesgmacctx;
&auth_hash_gmac_aes_128, sizeof(AES_GMAC_CTX),
&auth_hash_gmac_aes_192, sizeof(AES_GMAC_CTX),
&auth_hash_gmac_aes_256, sizeof(AES_GMAC_CTX),
AES_GMAC_Init(AES_GMAC_CTX *ctx)
memset(ctx, 0, sizeof(AES_GMAC_CTX));
AES_GMAC_Setkey(AES_GMAC_CTX *ctx, const uint8_t *key, uint16_t klen)
AES_GMAC_Reinit(AES_GMAC_CTX *ctx, const uint8_t *iv, uint16_t ivlen)
AES_GMAC_Update(AES_GMAC_CTX *ctx, const uint8_t *data, uint16_t len)
AES_GMAC_Final(uint8_t digest[GMAC_DIGEST_LEN], AES_GMAC_CTX *ctx)
void AES_GMAC_Init(AES_GMAC_CTX *);
void AES_GMAC_Setkey(AES_GMAC_CTX *, const uint8_t *, uint16_t);
void AES_GMAC_Reinit(AES_GMAC_CTX *, const uint8_t *, uint16_t);
int AES_GMAC_Update(AES_GMAC_CTX *, const uint8_t *, uint16_t);
void AES_GMAC_Final(uint8_t [GMAC_DIGEST_LEN], AES_GMAC_CTX *);