Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-09-16 09:19:15

0001 /*
0002  * Copyright 2010-2020 The OpenSSL Project Authors. All Rights Reserved.
0003  *
0004  * Licensed under the Apache License 2.0 (the "License").  You may not use
0005  * this file except in compliance with the License.  You can obtain a copy
0006  * in the file LICENSE in the source distribution or at
0007  * https://www.openssl.org/source/license.html
0008  */
0009 
0010 #ifndef OPENSSL_CMAC_H
0011 #define OPENSSL_CMAC_H
0012 #pragma once
0013 
0014 #include <openssl/macros.h>
0015 #ifndef OPENSSL_NO_DEPRECATED_3_0
0016 #define HEADER_CMAC_H
0017 #endif
0018 
0019 #ifndef OPENSSL_NO_CMAC
0020 
0021 #ifdef __cplusplus
0022 extern "C" {
0023 #endif
0024 
0025 #include <openssl/evp.h>
0026 
0027 #ifndef OPENSSL_NO_DEPRECATED_3_0
0028 /* Opaque */
0029 typedef struct CMAC_CTX_st CMAC_CTX;
0030 #endif
0031 #ifndef OPENSSL_NO_DEPRECATED_3_0
0032 OSSL_DEPRECATEDIN_3_0 CMAC_CTX *CMAC_CTX_new(void);
0033 OSSL_DEPRECATEDIN_3_0 void CMAC_CTX_cleanup(CMAC_CTX *ctx);
0034 OSSL_DEPRECATEDIN_3_0 void CMAC_CTX_free(CMAC_CTX *ctx);
0035 OSSL_DEPRECATEDIN_3_0 EVP_CIPHER_CTX *CMAC_CTX_get0_cipher_ctx(CMAC_CTX *ctx);
0036 OSSL_DEPRECATEDIN_3_0 int CMAC_CTX_copy(CMAC_CTX *out, const CMAC_CTX *in);
0037 OSSL_DEPRECATEDIN_3_0 int CMAC_Init(CMAC_CTX *ctx,
0038     const void *key, size_t keylen,
0039     const EVP_CIPHER *cipher, ENGINE *impl);
0040 OSSL_DEPRECATEDIN_3_0 int CMAC_Update(CMAC_CTX *ctx,
0041     const void *data, size_t dlen);
0042 OSSL_DEPRECATEDIN_3_0 int CMAC_Final(CMAC_CTX *ctx,
0043     unsigned char *out, size_t *poutlen);
0044 OSSL_DEPRECATEDIN_3_0 int CMAC_resume(CMAC_CTX *ctx);
0045 #endif
0046 
0047 #ifdef __cplusplus
0048 }
0049 #endif
0050 
0051 #endif
0052 #endif