openssl/providers/implementations/include/prov/macsignature.h
Matt Caswell a540ef90f5 Extend the provider MAC bridge for CMAC
The previous commits added support for HMAC, SIPHASH and Poly1305 into
the provider MAC bridge. We now extend that for CMAC too.

Reviewed-by: Paul Dale <paul.dale@oracle.com>
(Merged from https://github.com/openssl/openssl/pull/12637)
2020-08-29 17:40:11 +10:00

30 lines
791 B
C

/*
* Copyright 2020 The OpenSSL Project Authors. All Rights Reserved.
*
* Licensed under the Apache License 2.0 (the "License"). You may not use
* this file except in compliance with the License. You can obtain a copy
* in the file LICENSE in the source distribution or at
* https://www.openssl.org/source/license.html
*/
#include <stdlib.h>
#include <openssl/crypto.h>
#include "internal/refcount.h"
struct mac_key_st {
CRYPTO_RWLOCK *lock;
OPENSSL_CTX *libctx;
CRYPTO_REF_COUNT refcnt;
unsigned char *priv_key;
size_t priv_key_len;
char *cipher_name;
char *engine_name;
int cmac;
};
typedef struct mac_key_st MAC_KEY;
MAC_KEY *mac_key_new(OPENSSL_CTX *libctx, int cmac);
void mac_key_free(MAC_KEY *mackey);
int mac_key_up_ref(MAC_KEY *mackey);