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_context Struct Reference

#include <ssl.h>

Collaboration diagram for mbedtls_ssl_context:

Data Fields

const mbedtls_ssl_configconf
 
int state
 
int renego_status
 
int renego_records_seen
 
int major_ver
 
int minor_ver
 
unsigned badmac_seen
 
mbedtls_ssl_send_tf_send
 
mbedtls_ssl_recv_tf_recv
 
mbedtls_ssl_recv_timeout_tf_recv_timeout
 
void * p_bio
 
mbedtls_ssl_sessionsession_in
 
mbedtls_ssl_sessionsession_out
 
mbedtls_ssl_sessionsession
 
mbedtls_ssl_sessionsession_negotiate
 
mbedtls_ssl_handshake_paramshandshake
 
mbedtls_ssl_transformtransform_in
 
mbedtls_ssl_transformtransform_out
 
mbedtls_ssl_transformtransform
 
mbedtls_ssl_transformtransform_negotiate
 
void * p_timer
 
mbedtls_ssl_set_timer_tf_set_timer
 
mbedtls_ssl_get_timer_tf_get_timer
 
unsigned char * in_buf
 
unsigned char * in_ctr
 
unsigned char * in_hdr
 
unsigned char * in_len
 
unsigned char * in_iv
 
unsigned char * in_msg
 
unsigned char * in_offt
 
int in_msgtype
 
size_t in_msglen
 
size_t in_left
 
uint16_t in_epoch
 
size_t next_record_offset
 
uint64_t in_window_top
 
uint64_t in_window
 
size_t in_hslen
 
int nb_zero
 
int keep_current_message
 
uint8_t disable_datagram_packing
 
unsigned char * out_buf
 
unsigned char * out_ctr
 
unsigned char * out_hdr
 
unsigned char * out_len
 
unsigned char * out_iv
 
unsigned char * out_msg
 
int out_msgtype
 
size_t out_msglen
 
size_t out_left
 
unsigned char cur_out_ctr [8]
 
uint16_t mtu
 
signed char split_done
 
int client_auth
 
char * hostname
 
const char * alpn_chosen
 
unsigned char * cli_id
 
size_t cli_id_len
 
int secure_renegotiation
 
size_t verify_data_len
 
char own_verify_data [MBEDTLS_SSL_VERIFY_DATA_MAX_LEN]
 
char peer_verify_data [MBEDTLS_SSL_VERIFY_DATA_MAX_LEN]
 

Detailed Description

Definition at line 1022 of file ssl.h.

Field Documentation

const char* mbedtls_ssl_context::alpn_chosen

negotiated protocol

Definition at line 1157 of file ssl.h.

unsigned mbedtls_ssl_context::badmac_seen

records with a bad MAC received

Definition at line 1041 of file ssl.h.

unsigned char* mbedtls_ssl_context::cli_id

transport-level ID of the client

Definition at line 1164 of file ssl.h.

size_t mbedtls_ssl_context::cli_id_len

length of cli_id

Definition at line 1165 of file ssl.h.

int mbedtls_ssl_context::client_auth

flag for client auth.

Definition at line 1146 of file ssl.h.

const mbedtls_ssl_config* mbedtls_ssl_context::conf

configuration information

Definition at line 1024 of file ssl.h.

Referenced by mbedtls_ssl_hdr_len(), mbedtls_ssl_hs_hdr_len(), mbedtls_ssl_own_cert(), and mbedtls_ssl_own_key().

unsigned char mbedtls_ssl_context::cur_out_ctr[8]

Outgoing record sequence number.

Definition at line 1130 of file ssl.h.

uint8_t mbedtls_ssl_context::disable_datagram_packing

Disable packing multiple records within a single datagram.

Definition at line 1112 of file ssl.h.

mbedtls_ssl_get_timer_t* mbedtls_ssl_context::f_get_timer

get timer callback

Definition at line 1076 of file ssl.h.

mbedtls_ssl_recv_t* mbedtls_ssl_context::f_recv

Callback for network receive

Definition at line 1045 of file ssl.h.

mbedtls_ssl_recv_timeout_t* mbedtls_ssl_context::f_recv_timeout

Callback for network receive with timeout

Definition at line 1046 of file ssl.h.

mbedtls_ssl_send_t* mbedtls_ssl_context::f_send

Callback for network send

Definition at line 1044 of file ssl.h.

mbedtls_ssl_set_timer_t* mbedtls_ssl_context::f_set_timer

set timer callback

Definition at line 1075 of file ssl.h.

mbedtls_ssl_handshake_params* mbedtls_ssl_context::handshake

params required only during the handshake process

Definition at line 1059 of file ssl.h.

Referenced by mbedtls_ssl_own_cert(), and mbedtls_ssl_own_key().

char* mbedtls_ssl_context::hostname

expected peer CN for verification (and SNI if available)

Definition at line 1152 of file ssl.h.

unsigned char* mbedtls_ssl_context::in_buf

input buffer

Definition at line 1081 of file ssl.h.

unsigned char* mbedtls_ssl_context::in_ctr

64-bit incoming message counter TLS: maintained by us DTLS: read from peer

Definition at line 1082 of file ssl.h.

uint16_t mbedtls_ssl_context::in_epoch

DTLS epoch for incoming records

Definition at line 1095 of file ssl.h.

unsigned char* mbedtls_ssl_context::in_hdr

start of record header

Definition at line 1085 of file ssl.h.

size_t mbedtls_ssl_context::in_hslen

current handshake message length, including the handshake header

Definition at line 1104 of file ssl.h.

unsigned char* mbedtls_ssl_context::in_iv

ivlen-byte IV

Definition at line 1087 of file ssl.h.

size_t mbedtls_ssl_context::in_left

amount of data read so far

Definition at line 1093 of file ssl.h.

unsigned char* mbedtls_ssl_context::in_len

two-bytes message length field

Definition at line 1086 of file ssl.h.

unsigned char* mbedtls_ssl_context::in_msg

message contents (in_iv+ivlen)

Definition at line 1088 of file ssl.h.

size_t mbedtls_ssl_context::in_msglen

record header: message length

Definition at line 1092 of file ssl.h.

int mbedtls_ssl_context::in_msgtype

record header: message type

Definition at line 1091 of file ssl.h.

unsigned char* mbedtls_ssl_context::in_offt

read offset in application data

Definition at line 1089 of file ssl.h.

uint64_t mbedtls_ssl_context::in_window

bitmask for replay detection

Definition at line 1101 of file ssl.h.

uint64_t mbedtls_ssl_context::in_window_top

last validated record seq_num

Definition at line 1100 of file ssl.h.

int mbedtls_ssl_context::keep_current_message

drop or reuse current message on next call to record layer?

Definition at line 1108 of file ssl.h.

int mbedtls_ssl_context::major_ver

equal to MBEDTLS_SSL_MAJOR_VERSION_3

Definition at line 1037 of file ssl.h.

int mbedtls_ssl_context::minor_ver

either 0 (SSL3) or 1 (TLS1.0)

Definition at line 1038 of file ssl.h.

uint16_t mbedtls_ssl_context::mtu

path mtu, used to fragment outgoing messages

Definition at line 1133 of file ssl.h.

int mbedtls_ssl_context::nb_zero

of 0-length encrypted messages

Definition at line 1106 of file ssl.h.

size_t mbedtls_ssl_context::next_record_offset

offset of the next record in datagram (equal to in_left if none)

Definition at line 1096 of file ssl.h.

unsigned char* mbedtls_ssl_context::out_buf

output buffer

Definition at line 1119 of file ssl.h.

unsigned char* mbedtls_ssl_context::out_ctr

64-bit outgoing message counter

Definition at line 1120 of file ssl.h.

unsigned char* mbedtls_ssl_context::out_hdr

start of record header

Definition at line 1121 of file ssl.h.

unsigned char* mbedtls_ssl_context::out_iv

ivlen-byte IV

Definition at line 1123 of file ssl.h.

size_t mbedtls_ssl_context::out_left

amount of data not yet written

Definition at line 1128 of file ssl.h.

unsigned char* mbedtls_ssl_context::out_len

two-bytes message length field

Definition at line 1122 of file ssl.h.

unsigned char* mbedtls_ssl_context::out_msg

message contents (out_iv+ivlen)

Definition at line 1124 of file ssl.h.

size_t mbedtls_ssl_context::out_msglen

record header: message length

Definition at line 1127 of file ssl.h.

int mbedtls_ssl_context::out_msgtype

record header: message type

Definition at line 1126 of file ssl.h.

char mbedtls_ssl_context::own_verify_data[MBEDTLS_SSL_VERIFY_DATA_MAX_LEN]

previous handshake verify data

Definition at line 1176 of file ssl.h.

void* mbedtls_ssl_context::p_bio

context for I/O operations

Definition at line 1049 of file ssl.h.

void* mbedtls_ssl_context::p_timer

context for the timer callbacks

Definition at line 1073 of file ssl.h.

char mbedtls_ssl_context::peer_verify_data[MBEDTLS_SSL_VERIFY_DATA_MAX_LEN]

previous handshake verify data

Definition at line 1177 of file ssl.h.

int mbedtls_ssl_context::renego_records_seen

Records since renego request, or with DTLS, number of retransmissions of request if renego_max_records is < 0

Definition at line 1032 of file ssl.h.

int mbedtls_ssl_context::renego_status

Initial, in progress, pending?

Definition at line 1031 of file ssl.h.

int mbedtls_ssl_context::secure_renegotiation

does peer support legacy or secure renegotiation

Definition at line 1172 of file ssl.h.

mbedtls_ssl_session* mbedtls_ssl_context::session

negotiated session data

Definition at line 1056 of file ssl.h.

mbedtls_ssl_session* mbedtls_ssl_context::session_in

current session data (in)

Definition at line 1054 of file ssl.h.

mbedtls_ssl_session* mbedtls_ssl_context::session_negotiate

session data in negotiation

Definition at line 1057 of file ssl.h.

mbedtls_ssl_session* mbedtls_ssl_context::session_out

current session data (out)

Definition at line 1055 of file ssl.h.

signed char mbedtls_ssl_context::split_done

current record already splitted?

Definition at line 1140 of file ssl.h.

int mbedtls_ssl_context::state

SSL handshake: current state

Definition at line 1029 of file ssl.h.

mbedtls_ssl_transform* mbedtls_ssl_context::transform

negotiated transform params

Definition at line 1067 of file ssl.h.

mbedtls_ssl_transform* mbedtls_ssl_context::transform_in

current transform params (in)

Definition at line 1065 of file ssl.h.

mbedtls_ssl_transform* mbedtls_ssl_context::transform_negotiate

transform params in negotiation

Definition at line 1068 of file ssl.h.

mbedtls_ssl_transform* mbedtls_ssl_context::transform_out

current transform params (in)

Definition at line 1066 of file ssl.h.

size_t mbedtls_ssl_context::verify_data_len

length of verify data stored

Definition at line 1175 of file ssl.h.


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