PolarSSL is now part of ARM Official announcement and rebranded as mbed TLS.

API Documentation (Doxygen generated)

These pages are generated with doxygen directly from the source code!

mbedtls_ssl_handshake_params Struct Reference

#include <ssl_internal.h>

Collaboration diagram for mbedtls_ssl_handshake_params:

Data Fields

mbedtls_ssl_sig_hash_set_t hash_algs
mbedtls_dhm_context dhm_ctx
mbedtls_ecdh_context ecdh_ctx
const mbedtls_ecp_curve_info ** curves
unsigned char * psk
size_t psk_len
int sni_authmode
unsigned int out_msg_seq
unsigned int in_msg_seq
unsigned char * verify_cookie
unsigned char verify_cookie_len
uint32_t retransmit_timeout
unsigned char retransmit_state
unsigned char * cur_msg_p
unsigned int in_flight_start_seq
unsigned char alt_out_ctr [8]
struct {
   size_t   total_bytes_buffered
   uint8_t   seen_ccs
   struct mbedtls_ssl_hs_buffer {
      unsigned   is_valid: 1
      unsigned   is_fragmented: 1
      unsigned   is_complete: 1
      unsigned char *   data
      size_t   data_len
   struct {
      unsigned char *   data
      size_t   len
      unsigned   epoch
   }   future_record
uint16_t mtu
mbedtls_md5_context fin_md5
mbedtls_sha1_context fin_sha1
mbedtls_sha256_context fin_sha256
mbedtls_sha512_context fin_sha512
void(* update_checksum )(mbedtls_ssl_context *, const unsigned char *, size_t)
void(* calc_verify )(mbedtls_ssl_context *, unsigned char *)
void(* calc_finished )(mbedtls_ssl_context *, unsigned char *, int)
int(* tls_prf )(const unsigned char *, size_t, const char *, const unsigned char *, size_t, unsigned char *, size_t)
size_t pmslen
unsigned char randbytes [64]
unsigned char premaster [MBEDTLS_PREMASTER_SIZE]
int resume
int max_major_ver
int max_minor_ver
int cli_exts
int new_session_ticket
int extended_ms

Detailed Description

Definition at line 264 of file ssl_internal.h.

Field Documentation

unsigned char mbedtls_ssl_handshake_params::alt_out_ctr[8]

Alternative record epoch/counter for resending messages

Definition at line 334 of file ssl_internal.h.

mbedtls_ssl_transform* mbedtls_ssl_handshake_params::alt_transform_out

Alternative transform for resending messages

Definition at line 332 of file ssl_internal.h.

struct { ... } mbedtls_ssl_handshake_params::buffering
void(* mbedtls_ssl_handshake_params::calc_finished)(mbedtls_ssl_context *, unsigned char *, int)

Definition at line 385 of file ssl_internal.h.

void(* mbedtls_ssl_handshake_params::calc_verify)(mbedtls_ssl_context *, unsigned char *)

Definition at line 384 of file ssl_internal.h.

int mbedtls_ssl_handshake_params::cli_exts

client extension presence

Definition at line 399 of file ssl_internal.h.

mbedtls_ssl_flight_item* mbedtls_ssl_handshake_params::cur_msg

Current message in flight

Definition at line 328 of file ssl_internal.h.

unsigned char* mbedtls_ssl_handshake_params::cur_msg_p

Position in current message

Definition at line 329 of file ssl_internal.h.

const mbedtls_ecp_curve_info** mbedtls_ssl_handshake_params::curves

Supported elliptic curves

Definition at line 289 of file ssl_internal.h.

unsigned char* mbedtls_ssl_handshake_params::data

Definition at line 350 of file ssl_internal.h.

size_t mbedtls_ssl_handshake_params::data_len

Definition at line 351 of file ssl_internal.h.

mbedtls_dhm_context mbedtls_ssl_handshake_params::dhm_ctx

DHM key exchange

Definition at line 275 of file ssl_internal.h.

mbedtls_ecdh_context mbedtls_ssl_handshake_params::ecdh_ctx

ECDH key exchange

Definition at line 278 of file ssl_internal.h.

unsigned mbedtls_ssl_handshake_params::epoch

Definition at line 358 of file ssl_internal.h.

int mbedtls_ssl_handshake_params::extended_ms

use Extended Master Secret?

Definition at line 405 of file ssl_internal.h.

mbedtls_md5_context mbedtls_ssl_handshake_params::fin_md5

Definition at line 371 of file ssl_internal.h.

mbedtls_sha1_context mbedtls_ssl_handshake_params::fin_sha1

Definition at line 372 of file ssl_internal.h.

mbedtls_sha256_context mbedtls_ssl_handshake_params::fin_sha256

Definition at line 376 of file ssl_internal.h.

mbedtls_sha512_context mbedtls_ssl_handshake_params::fin_sha512

Definition at line 379 of file ssl_internal.h.

mbedtls_ssl_flight_item* mbedtls_ssl_handshake_params::flight

Current outgoing flight

Definition at line 327 of file ssl_internal.h.

struct { ... } mbedtls_ssl_handshake_params::future_record
mbedtls_ssl_sig_hash_set_t mbedtls_ssl_handshake_params::hash_algs

Set of suitable sig-hash pairs

Definition at line 272 of file ssl_internal.h.

struct { ... } ::mbedtls_ssl_hs_buffer mbedtls_ssl_handshake_params::hs[MBEDTLS_SSL_MAX_BUFFERED_HS]
unsigned int mbedtls_ssl_handshake_params::in_flight_start_seq

Minimum message sequence in the flight being received

Definition at line 330 of file ssl_internal.h.

unsigned int mbedtls_ssl_handshake_params::in_msg_seq

Incoming handshake sequence number

Definition at line 318 of file ssl_internal.h.

unsigned mbedtls_ssl_handshake_params::is_complete

Definition at line 349 of file ssl_internal.h.

unsigned mbedtls_ssl_handshake_params::is_fragmented

Definition at line 348 of file ssl_internal.h.

unsigned mbedtls_ssl_handshake_params::is_valid

Definition at line 347 of file ssl_internal.h.

mbedtls_ssl_key_cert* mbedtls_ssl_handshake_params::key_cert

chosen key/cert pair (server)

Definition at line 296 of file ssl_internal.h.

Referenced by mbedtls_ssl_own_cert(), and mbedtls_ssl_own_key().

size_t mbedtls_ssl_handshake_params::len

Definition at line 357 of file ssl_internal.h.

int mbedtls_ssl_handshake_params::max_major_ver

max. major version client

Definition at line 397 of file ssl_internal.h.

int mbedtls_ssl_handshake_params::max_minor_ver

max. minor version client

Definition at line 398 of file ssl_internal.h.

uint16_t mbedtls_ssl_handshake_params::mtu

Handshake mtu, used to fragment outgoing messages

Definition at line 363 of file ssl_internal.h.

int mbedtls_ssl_handshake_params::new_session_ticket

use NewSessionTicket?

Definition at line 402 of file ssl_internal.h.

unsigned int mbedtls_ssl_handshake_params::out_msg_seq

Outgoing handshake sequence number

Definition at line 317 of file ssl_internal.h.

size_t mbedtls_ssl_handshake_params::pmslen

premaster length

Definition at line 390 of file ssl_internal.h.

unsigned char mbedtls_ssl_handshake_params::premaster[MBEDTLS_PREMASTER_SIZE]

premaster secret

Definition at line 393 of file ssl_internal.h.

unsigned char* mbedtls_ssl_handshake_params::psk

PSK from the callback

Definition at line 292 of file ssl_internal.h.

size_t mbedtls_ssl_handshake_params::psk_len

Length of PSK from callback

Definition at line 293 of file ssl_internal.h.

unsigned char mbedtls_ssl_handshake_params::randbytes[64]

random bytes

Definition at line 392 of file ssl_internal.h.

int mbedtls_ssl_handshake_params::resume

session resume indicator

Definition at line 396 of file ssl_internal.h.

unsigned char mbedtls_ssl_handshake_params::retransmit_state

Retransmission state

Definition at line 326 of file ssl_internal.h.

uint32_t mbedtls_ssl_handshake_params::retransmit_timeout

Current value of timeout

Definition at line 325 of file ssl_internal.h.

uint8_t mbedtls_ssl_handshake_params::seen_ccs

Indicates if a CCS message has been seen in the current flight.

Definition at line 342 of file ssl_internal.h.

int mbedtls_ssl_handshake_params::sni_authmode

authmode from SNI callback

Definition at line 298 of file ssl_internal.h.

mbedtls_x509_crt* mbedtls_ssl_handshake_params::sni_ca_chain

trusted CAs from SNI callback

Definition at line 300 of file ssl_internal.h.

mbedtls_x509_crl* mbedtls_ssl_handshake_params::sni_ca_crl

trusted CAs CRLs from SNI

Definition at line 301 of file ssl_internal.h.

mbedtls_ssl_key_cert* mbedtls_ssl_handshake_params::sni_key_cert

key/cert list from SNI

Definition at line 299 of file ssl_internal.h.

int(* mbedtls_ssl_handshake_params::tls_prf)(const unsigned char *, size_t, const char *, const unsigned char *, size_t, unsigned char *, size_t)

Definition at line 386 of file ssl_internal.h.

size_t mbedtls_ssl_handshake_params::total_bytes_buffered

Cumulative size of heap allocated buffers used for message buffering.

Definition at line 339 of file ssl_internal.h.

void(* mbedtls_ssl_handshake_params::update_checksum)(mbedtls_ssl_context *, const unsigned char *, size_t)

Definition at line 383 of file ssl_internal.h.

unsigned char* mbedtls_ssl_handshake_params::verify_cookie

Cli: HelloVerifyRequest cookie Srv: unused

Definition at line 320 of file ssl_internal.h.

unsigned char mbedtls_ssl_handshake_params::verify_cookie_len

Cli: cookie length Srv: flag for sending a cookie

Definition at line 322 of file ssl_internal.h.

The documentation for this struct was generated from the following file: