Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 10:05:39

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