Classes | Functions | Variables
e_tls.c File Reference
#include <assert.h>
#include <limits.h>
#include <string.h>
#include <openssl/aead.h>
#include <openssl/cipher.h>
#include <openssl/err.h>
#include <openssl/hmac.h>
#include <openssl/md5.h>
#include <openssl/mem.h>
#include <openssl/sha.h>
#include <openssl/type_check.h>
#include "../fipsmodule/cipher/internal.h"
#include "../internal.h"
#include "internal.h"
Include dependency graph for e_tls.c:

Go to the source code of this file.

Classes

struct  AEAD_TLS_CTX
 

Functions

static int aead_aes_128_cbc_sha1_tls_implicit_iv_init (EVP_AEAD_CTX *ctx, const uint8_t *key, size_t key_len, size_t tag_len, enum evp_aead_direction_t dir)
 
static int aead_aes_128_cbc_sha1_tls_init (EVP_AEAD_CTX *ctx, const uint8_t *key, size_t key_len, size_t tag_len, enum evp_aead_direction_t dir)
 
static int aead_aes_256_cbc_sha1_tls_implicit_iv_init (EVP_AEAD_CTX *ctx, const uint8_t *key, size_t key_len, size_t tag_len, enum evp_aead_direction_t dir)
 
static int aead_aes_256_cbc_sha1_tls_init (EVP_AEAD_CTX *ctx, const uint8_t *key, size_t key_len, size_t tag_len, enum evp_aead_direction_t dir)
 
static int aead_des_ede3_cbc_sha1_tls_implicit_iv_init (EVP_AEAD_CTX *ctx, const uint8_t *key, size_t key_len, size_t tag_len, enum evp_aead_direction_t dir)
 
static int aead_des_ede3_cbc_sha1_tls_init (EVP_AEAD_CTX *ctx, const uint8_t *key, size_t key_len, size_t tag_len, enum evp_aead_direction_t dir)
 
static int aead_null_sha1_tls_init (EVP_AEAD_CTX *ctx, const uint8_t *key, size_t key_len, size_t tag_len, enum evp_aead_direction_t dir)
 
static void aead_tls_cleanup (EVP_AEAD_CTX *ctx)
 
static int aead_tls_get_iv (const EVP_AEAD_CTX *ctx, const uint8_t **out_iv, size_t *out_iv_len)
 
static int aead_tls_init (EVP_AEAD_CTX *ctx, const uint8_t *key, size_t key_len, size_t tag_len, enum evp_aead_direction_t dir, const EVP_CIPHER *cipher, const EVP_MD *md, char implicit_iv)
 
static int aead_tls_open (const EVP_AEAD_CTX *ctx, uint8_t *out, size_t *out_len, size_t max_out_len, const uint8_t *nonce, size_t nonce_len, const uint8_t *in, size_t in_len, const uint8_t *ad, size_t ad_len)
 
static int aead_tls_seal_scatter (const EVP_AEAD_CTX *ctx, uint8_t *out, uint8_t *out_tag, size_t *out_tag_len, const size_t max_out_tag_len, const uint8_t *nonce, const size_t nonce_len, const uint8_t *in, const size_t in_len, const uint8_t *extra_in, const size_t extra_in_len, const uint8_t *ad, const size_t ad_len)
 
static size_t aead_tls_tag_len (const EVP_AEAD_CTX *ctx, const size_t in_len, const size_t extra_in_len)
 
const EVP_AEADEVP_aead_aes_128_cbc_sha1_tls (void)
 
const EVP_AEADEVP_aead_aes_128_cbc_sha1_tls_implicit_iv (void)
 
const EVP_AEADEVP_aead_aes_256_cbc_sha1_tls (void)
 
const EVP_AEADEVP_aead_aes_256_cbc_sha1_tls_implicit_iv (void)
 
const EVP_AEADEVP_aead_des_ede3_cbc_sha1_tls (void)
 
const EVP_AEADEVP_aead_des_ede3_cbc_sha1_tls_implicit_iv (void)
 
const EVP_AEADEVP_aead_null_sha1_tls (void)
 
 OPENSSL_STATIC_ASSERT (EVP_MAX_MD_SIZE< 256, "mac_key_len does not fit in uint8_t")
 
 OPENSSL_STATIC_ASSERT (sizeof(((EVP_AEAD_CTX *) NULL) ->state) >=sizeof(AEAD_TLS_CTX), "AEAD state is too small")
 

Variables

static const EVP_AEAD aead_aes_128_cbc_sha1_tls
 
static const EVP_AEAD aead_aes_128_cbc_sha1_tls_implicit_iv
 
static const EVP_AEAD aead_aes_256_cbc_sha1_tls
 
static const EVP_AEAD aead_aes_256_cbc_sha1_tls_implicit_iv
 
static const EVP_AEAD aead_des_ede3_cbc_sha1_tls
 
static const EVP_AEAD aead_des_ede3_cbc_sha1_tls_implicit_iv
 
static const EVP_AEAD aead_null_sha1_tls
 

Function Documentation

◆ aead_aes_128_cbc_sha1_tls_implicit_iv_init()

static int aead_aes_128_cbc_sha1_tls_implicit_iv_init ( EVP_AEAD_CTX ctx,
const uint8_t key,
size_t  key_len,
size_t  tag_len,
enum evp_aead_direction_t  dir 
)
static

Definition at line 402 of file e_tls.c.

◆ aead_aes_128_cbc_sha1_tls_init()

static int aead_aes_128_cbc_sha1_tls_init ( EVP_AEAD_CTX ctx,
const uint8_t key,
size_t  key_len,
size_t  tag_len,
enum evp_aead_direction_t  dir 
)
static

Definition at line 395 of file e_tls.c.

◆ aead_aes_256_cbc_sha1_tls_implicit_iv_init()

static int aead_aes_256_cbc_sha1_tls_implicit_iv_init ( EVP_AEAD_CTX ctx,
const uint8_t key,
size_t  key_len,
size_t  tag_len,
enum evp_aead_direction_t  dir 
)
static

Definition at line 416 of file e_tls.c.

◆ aead_aes_256_cbc_sha1_tls_init()

static int aead_aes_256_cbc_sha1_tls_init ( EVP_AEAD_CTX ctx,
const uint8_t key,
size_t  key_len,
size_t  tag_len,
enum evp_aead_direction_t  dir 
)
static

Definition at line 409 of file e_tls.c.

◆ aead_des_ede3_cbc_sha1_tls_implicit_iv_init()

static int aead_des_ede3_cbc_sha1_tls_implicit_iv_init ( EVP_AEAD_CTX ctx,
const uint8_t key,
size_t  key_len,
size_t  tag_len,
enum evp_aead_direction_t  dir 
)
static

Definition at line 431 of file e_tls.c.

◆ aead_des_ede3_cbc_sha1_tls_init()

static int aead_des_ede3_cbc_sha1_tls_init ( EVP_AEAD_CTX ctx,
const uint8_t key,
size_t  key_len,
size_t  tag_len,
enum evp_aead_direction_t  dir 
)
static

Definition at line 423 of file e_tls.c.

◆ aead_null_sha1_tls_init()

static int aead_null_sha1_tls_init ( EVP_AEAD_CTX ctx,
const uint8_t key,
size_t  key_len,
size_t  tag_len,
enum evp_aead_direction_t  dir 
)
static

Definition at line 451 of file e_tls.c.

◆ aead_tls_cleanup()

static void aead_tls_cleanup ( EVP_AEAD_CTX ctx)
static

Definition at line 57 of file e_tls.c.

◆ aead_tls_get_iv()

static int aead_tls_get_iv ( const EVP_AEAD_CTX ctx,
const uint8_t **  out_iv,
size_t *  out_iv_len 
)
static

Definition at line 438 of file e_tls.c.

◆ aead_tls_init()

static int aead_tls_init ( EVP_AEAD_CTX ctx,
const uint8_t key,
size_t  key_len,
size_t  tag_len,
enum evp_aead_direction_t  dir,
const EVP_CIPHER cipher,
const EVP_MD md,
char  implicit_iv 
)
static

Definition at line 63 of file e_tls.c.

◆ aead_tls_open()

static int aead_tls_open ( const EVP_AEAD_CTX ctx,
uint8_t out,
size_t *  out_len,
size_t  max_out_len,
const uint8_t nonce,
size_t  nonce_len,
const uint8_t in,
size_t  in_len,
const uint8_t ad,
size_t  ad_len 
)
static

Definition at line 242 of file e_tls.c.

◆ aead_tls_seal_scatter()

static int aead_tls_seal_scatter ( const EVP_AEAD_CTX ctx,
uint8_t out,
uint8_t out_tag,
size_t *  out_tag_len,
const size_t  max_out_tag_len,
const uint8_t nonce,
const size_t  nonce_len,
const uint8_t in,
const size_t  in_len,
const uint8_t extra_in,
const size_t  extra_in_len,
const uint8_t ad,
const size_t  ad_len 
)
static

Definition at line 122 of file e_tls.c.

◆ aead_tls_tag_len()

static size_t aead_tls_tag_len ( const EVP_AEAD_CTX ctx,
const size_t  in_len,
const size_t  extra_in_len 
)
static

Definition at line 103 of file e_tls.c.

◆ EVP_aead_aes_128_cbc_sha1_tls()

const EVP_AEAD* EVP_aead_aes_128_cbc_sha1_tls ( void  )

Definition at line 577 of file e_tls.c.

◆ EVP_aead_aes_128_cbc_sha1_tls_implicit_iv()

const EVP_AEAD* EVP_aead_aes_128_cbc_sha1_tls_implicit_iv ( void  )

Definition at line 581 of file e_tls.c.

◆ EVP_aead_aes_256_cbc_sha1_tls()

const EVP_AEAD* EVP_aead_aes_256_cbc_sha1_tls ( void  )

Definition at line 585 of file e_tls.c.

◆ EVP_aead_aes_256_cbc_sha1_tls_implicit_iv()

const EVP_AEAD* EVP_aead_aes_256_cbc_sha1_tls_implicit_iv ( void  )

Definition at line 589 of file e_tls.c.

◆ EVP_aead_des_ede3_cbc_sha1_tls()

const EVP_AEAD* EVP_aead_des_ede3_cbc_sha1_tls ( void  )

Definition at line 593 of file e_tls.c.

◆ EVP_aead_des_ede3_cbc_sha1_tls_implicit_iv()

const EVP_AEAD* EVP_aead_des_ede3_cbc_sha1_tls_implicit_iv ( void  )

Definition at line 597 of file e_tls.c.

◆ EVP_aead_null_sha1_tls()

const EVP_AEAD* EVP_aead_null_sha1_tls ( void  )

Definition at line 601 of file e_tls.c.

◆ OPENSSL_STATIC_ASSERT() [1/2]

OPENSSL_STATIC_ASSERT ( )

◆ OPENSSL_STATIC_ASSERT() [2/2]

OPENSSL_STATIC_ASSERT ( sizeof(((EVP_AEAD_CTX *) NULL) ->state) >=sizeof(AEAD_TLS_CTX ,
"AEAD state is too small"   
)

Variable Documentation

◆ aead_aes_128_cbc_sha1_tls

const EVP_AEAD aead_aes_128_cbc_sha1_tls
static

◆ aead_aes_128_cbc_sha1_tls_implicit_iv

const EVP_AEAD aead_aes_128_cbc_sha1_tls_implicit_iv
static

◆ aead_aes_256_cbc_sha1_tls

const EVP_AEAD aead_aes_256_cbc_sha1_tls
static

◆ aead_aes_256_cbc_sha1_tls_implicit_iv

const EVP_AEAD aead_aes_256_cbc_sha1_tls_implicit_iv
static

◆ aead_des_ede3_cbc_sha1_tls

const EVP_AEAD aead_des_ede3_cbc_sha1_tls
static

◆ aead_des_ede3_cbc_sha1_tls_implicit_iv

const EVP_AEAD aead_des_ede3_cbc_sha1_tls_implicit_iv
static

◆ aead_null_sha1_tls

const EVP_AEAD aead_null_sha1_tls
static
aead_des_ede3_cbc_sha1_tls_implicit_iv_init
static int aead_des_ede3_cbc_sha1_tls_implicit_iv_init(EVP_AEAD_CTX *ctx, const uint8_t *key, size_t key_len, size_t tag_len, enum evp_aead_direction_t dir)
Definition: e_tls.c:431
aead_tls_open
static int aead_tls_open(const EVP_AEAD_CTX *ctx, uint8_t *out, size_t *out_len, size_t max_out_len, const uint8_t *nonce, size_t nonce_len, const uint8_t *in, size_t in_len, const uint8_t *ad, size_t ad_len)
Definition: e_tls.c:242
aead_aes_128_cbc_sha1_tls_init
static int aead_aes_128_cbc_sha1_tls_init(EVP_AEAD_CTX *ctx, const uint8_t *key, size_t key_len, size_t tag_len, enum evp_aead_direction_t dir)
Definition: e_tls.c:395
aead_tls_seal_scatter
static int aead_tls_seal_scatter(const EVP_AEAD_CTX *ctx, uint8_t *out, uint8_t *out_tag, size_t *out_tag_len, const size_t max_out_tag_len, const uint8_t *nonce, const size_t nonce_len, const uint8_t *in, const size_t in_len, const uint8_t *extra_in, const size_t extra_in_len, const uint8_t *ad, const size_t ad_len)
Definition: e_tls.c:122
aead_aes_256_cbc_sha1_tls_init
static int aead_aes_256_cbc_sha1_tls_init(EVP_AEAD_CTX *ctx, const uint8_t *key, size_t key_len, size_t tag_len, enum evp_aead_direction_t dir)
Definition: e_tls.c:409
aead_tls_tag_len
static size_t aead_tls_tag_len(const EVP_AEAD_CTX *ctx, const size_t in_len, const size_t extra_in_len)
Definition: e_tls.c:103
aead_des_ede3_cbc_sha1_tls_init
static int aead_des_ede3_cbc_sha1_tls_init(EVP_AEAD_CTX *ctx, const uint8_t *key, size_t key_len, size_t tag_len, enum evp_aead_direction_t dir)
Definition: e_tls.c:423
aead_aes_256_cbc_sha1_tls_implicit_iv_init
static int aead_aes_256_cbc_sha1_tls_implicit_iv_init(EVP_AEAD_CTX *ctx, const uint8_t *key, size_t key_len, size_t tag_len, enum evp_aead_direction_t dir)
Definition: e_tls.c:416
aead_tls_get_iv
static int aead_tls_get_iv(const EVP_AEAD_CTX *ctx, const uint8_t **out_iv, size_t *out_iv_len)
Definition: e_tls.c:438
aead_tls_cleanup
static void aead_tls_cleanup(EVP_AEAD_CTX *ctx)
Definition: e_tls.c:57
SHA_DIGEST_LENGTH
#define SHA_DIGEST_LENGTH
Definition: sha.h:74
aead_aes_128_cbc_sha1_tls_implicit_iv_init
static int aead_aes_128_cbc_sha1_tls_implicit_iv_init(EVP_AEAD_CTX *ctx, const uint8_t *key, size_t key_len, size_t tag_len, enum evp_aead_direction_t dir)
Definition: e_tls.c:402
aead_null_sha1_tls_init
static int aead_null_sha1_tls_init(EVP_AEAD_CTX *ctx, const uint8_t *key, size_t key_len, size_t tag_len, enum evp_aead_direction_t dir)
Definition: e_tls.c:451


grpc
Author(s):
autogenerated on Fri May 16 2025 03:01:11