mbedtls_ssl_context::handshake field
![]()
(ssl->handshake->cookie == NULL))![]()
if (ssl->handshake->psk != NULL && ssl->handshake->psk_len > 0) {![]()
*psk = ssl->handshake->psk;![]()
*psk_len = ssl->handshake->psk_len;![]()
if (ssl->handshake->retransmit_timeout >= ssl->conf->hs_timeout_max) {![]()
if (ssl->handshake->retransmit_timeout != ssl->conf->hs_timeout_min) {![]()
ssl->handshake->mtu = 508;![]()
new_timeout = 2 * ssl->handshake->retransmit_timeout;![]()
if (new_timeout < ssl->handshake->retransmit_timeout ||![]()
ssl->handshake->retransmit_timeout = new_timeout;![]()
ssl->handshake->retransmit_timeout = ssl->conf->hs_timeout_min;![]()
timeout = ssl->handshake->retransmit_timeout;![]()
if (ssl->handshake->flight == NULL) {![]()
ssl->handshake->flight = msg;![]()
mbedtls_ssl_flight_item *cur = ssl->handshake->flight;![]()
if (ssl->transform_out == ssl->handshake->alt_transform_out) {![]()
ssl->transform_out = ssl->handshake->alt_transform_out;![]()
ssl->handshake->alt_transform_out = tmp_transform;![]()
memcpy(ssl->cur_out_ctr, ssl->handshake->alt_out_ctr,![]()
memcpy(ssl->handshake->alt_out_ctr, tmp_out_ctr,![]()
sizeof(ssl->handshake->alt_out_ctr));![]()
if (ssl->handshake->retransmit_state != MBEDTLS_SSL_RETRANS_SENDING) {![]()
ssl->handshake->cur_msg = ssl->handshake->flight;![]()
ssl->handshake->cur_msg_p = ssl->handshake->flight->p + 12;![]()
ssl->handshake->retransmit_state = MBEDTLS_SSL_RETRANS_SENDING;![]()
while (ssl->handshake->cur_msg != NULL) {![]()
const mbedtls_ssl_flight_item * const cur = ssl->handshake->cur_msg;![]()
if (is_finished && ssl->handshake->cur_msg_p == (cur->p + 12)) {![]()
ssl->handshake->cur_msg_p += cur->len;![]()
const unsigned char * const p = ssl->handshake->cur_msg_p;![]()
ssl->handshake->cur_msg_p += cur_hs_frag_len;![]()
if (ssl->handshake->cur_msg_p >= cur->p + cur->len) {![]()
ssl->handshake->cur_msg = cur->next;![]()
ssl->handshake->cur_msg_p = cur->next->p + 12;![]()
ssl->handshake->cur_msg = NULL;![]()
ssl->handshake->cur_msg_p = NULL;![]()
ssl->handshake->retransmit_state = MBEDTLS_SSL_RETRANS_FINISHED;![]()
ssl->handshake->retransmit_state = MBEDTLS_SSL_RETRANS_WAITING;![]()
mbedtls_ssl_set_timer(ssl, ssl->handshake->retransmit_timeout);![]()
mbedtls_ssl_flight_free(ssl->handshake->flight);![]()
ssl->handshake->flight = NULL;![]()
ssl->handshake->cur_msg = NULL;![]()
ssl->handshake->in_flight_start_seq = ssl->handshake->in_msg_seq;![]()
ssl->handshake->buffering.seen_ccs = 0;![]()
ssl->handshake->retransmit_state = MBEDTLS_SSL_RETRANS_FINISHED;![]()
ssl->handshake->retransmit_state = MBEDTLS_SSL_RETRANS_PREPARING;![]()
mbedtls_ssl_set_timer(ssl, ssl->handshake->retransmit_timeout);![]()
ssl->handshake->retransmit_state = MBEDTLS_SSL_RETRANS_FINISHED;![]()
ssl->handshake->retransmit_state = MBEDTLS_SSL_RETRANS_WAITING;![]()
ssl->handshake != NULL &&![]()
ssl->handshake->retransmit_state == MBEDTLS_SSL_RETRANS_SENDING) {![]()
MBEDTLS_PUT_UINT16_BE(ssl->handshake->out_msg_seq, ssl->out_msg, 4);![]()
++(ssl->handshake->out_msg_seq);![]()
if (ssl->handshake != NULL &&![]()
recv_msg_seq != ssl->handshake->in_msg_seq) ||![]()
if (recv_msg_seq > ssl->handshake->in_msg_seq) {![]()
if (recv_msg_seq == ssl->handshake->in_flight_start_seq - 1 &&![]()
ssl->handshake != NULL) {![]()
mbedtls_ssl_handshake_params * const hs = ssl->handshake;![]()
mbedtls_ssl_handshake_params * const hs = ssl->handshake;![]()
mbedtls_ssl_handshake_params * const hs = ssl->handshake;![]()
if (recv_msg_seq < ssl->handshake->in_msg_seq) {![]()
recv_msg_seq_offset = recv_msg_seq - ssl->handshake->in_msg_seq;![]()
mbedtls_ssl_handshake_params * const hs = ssl->handshake;![]()
mbedtls_ssl_handshake_params * const hs = ssl->handshake;![]()
mbedtls_ssl_handshake_params * const hs = ssl->handshake;![]()
if (ssl->handshake == NULL) {![]()
if (ssl->handshake != NULL &&![]()
if (ssl->handshake != NULL &&![]()
ssl->handshake->retransmit_state == MBEDTLS_SSL_RETRANS_SENDING) {![]()
mbedtls_ssl_handshake_params * const hs = ssl->handshake;![]()
mbedtls_ssl_handshake_params * const hs = ssl->handshake;![]()
if (ssl->handshake) {![]()
ssl->handshake->alt_transform_out = ssl->transform_out;![]()
ssl->handshake->retransmit_state = MBEDTLS_SSL_RETRANS_PREPARING;![]()
ssl->handshake->retransmit_state = MBEDTLS_SSL_RETRANS_WAITING;![]()
if (ssl->handshake == NULL || ssl->conf == NULL) {![]()
return mbedtls_ecjpake_setup(&ssl->handshake->ecjpake_ctx,![]()
if (ssl->handshake->psk != NULL) {![]()
mbedtls_zeroize_and_free(ssl->handshake->psk,![]()
ssl->handshake->psk_len);![]()
ssl->handshake->psk_len = 0;![]()
ssl->handshake->psk = NULL;![]()
if (psk == NULL || ssl->handshake == NULL) {![]()
if ((ssl->handshake->psk = mbedtls_calloc(1, psk_len)) == NULL) {![]()
ssl->handshake->psk_len = psk_len;![]()
memcpy(ssl->handshake->psk, psk, ssl->handshake->psk_len);![]()
if (ssl->handshake == NULL || ssl->handshake->mtu == 0) {![]()
return ssl->handshake->mtu;![]()
return ssl->mtu < ssl->handshake->mtu ?![]()
ssl->mtu : ssl->handshake->mtu;![]()
ssl->handshake->retransmit_state == MBEDTLS_SSL_RETRANS_SENDING) {![]()
ssl->handshake->out_msg_seq = 1;![]()
ssl->handshake->in_msg_seq = 1;![]()
if (ssl->handshake) {![]()
unsigned char *p = ssl->handshake->premaster;![]()
unsigned char *end = p + sizeof(ssl->handshake->premaster);![]()
if ((ret = mbedtls_ecdh_calc_secret(&ssl->handshake->ecdh_ctx, &zlen,![]()
ssl->handshake->pmslen = (size_t) (p - ssl->handshake->premaster);![]()
ssl->handshake->flight != NULL) {![]()
ssl->handshake->alt_transform_out = ssl->transform_out;![]()
memcpy(ssl->handshake->alt_out_ctr, ssl->cur_out_ctr,![]()
sizeof(ssl->handshake->alt_out_ctr));![]()
mbedtls_ecjpake_check(&ssl->handshake->ecjpake_ctx) != 0)![]()
if (mbedtls_ecjpake_check(&ssl->handshake->ecjpake_ctx) != 0) {![]()
if (ssl->handshake->ecjpake_cache == NULL ||![]()
ssl->handshake->ecjpake_cache_len == 0) {![]()
ret = mbedtls_ecjpake_write_round_one(&ssl->handshake->ecjpake_ctx,![]()
ssl->handshake->ecjpake_cache = mbedtls_calloc(1, kkpp_len);![]()
if (ssl->handshake->ecjpake_cache == NULL) {![]()
memcpy(ssl->handshake->ecjpake_cache, p + 2, kkpp_len);![]()
ssl->handshake->ecjpake_cache_len = kkpp_len;![]()
kkpp_len = ssl->handshake->ecjpake_cache_len;![]()
memcpy(p + 2, ssl->handshake->ecjpake_cache, kkpp_len);![]()
mbedtls_ecjpake_set_point_format(&ssl->handshake->ecjpake_ctx,![]()
if (ssl->handshake->ciphersuite_info->key_exchange !=![]()
mbedtls_free(ssl->handshake->ecjpake_cache);![]()
ssl->handshake->ecjpake_cache = NULL;![]()
ssl->handshake->ecjpake_cache_len = 0;![]()
if ((ret = mbedtls_ecjpake_read_round_one(&ssl->handshake->ecjpake_ctx,![]()
mbedtls_free(ssl->handshake->cookie);![]()
ssl->handshake->cookie = mbedtls_calloc(1, cookie_len);![]()
if (ssl->handshake->cookie == NULL) {![]()
memcpy(ssl->handshake->cookie, p, cookie_len);![]()
ssl->handshake->cookie_len = cookie_len;![]()
mbedtls_free(ssl->handshake->cookie);![]()
ssl->handshake->cookie = NULL;![]()
ssl->handshake->cookie_len = 0;![]()
if ((ret = mbedtls_dhm_read_params(&ssl->handshake->dhm_ctx,![]()
dhm_actual_bitlen = mbedtls_dhm_get_bitlen(&ssl->handshake->dhm_ctx);![]()
ret = mbedtls_ecjpake_read_round_two(&ssl->handshake->ecjpake_ctx,![]()
content_len = mbedtls_dhm_get_len(&ssl->handshake->dhm_ctx);![]()
ret = mbedtls_dhm_make_public(&ssl->handshake->dhm_ctx,![]()
(int) mbedtls_dhm_get_len(&ssl->handshake->dhm_ctx),![]()
if ((ret = mbedtls_dhm_calc_secret(&ssl->handshake->dhm_ctx,![]()
ssl->handshake->premaster,![]()
&ssl->handshake->pmslen,![]()
ret = mbedtls_ecdh_make_public(&ssl->handshake->ecdh_ctx,![]()
ret = mbedtls_ecjpake_write_round_two(&ssl->handshake->ecjpake_ctx,![]()
ret = mbedtls_ecjpake_derive_secret(&ssl->handshake->ecjpake_ctx,![]()
ssl->handshake->premaster, 32, &ssl->handshake->pmslen,![]()
mbedtls_ecjpake_set_point_format(&ssl->handshake->ecjpake_ctx,![]()
if (mbedtls_ecjpake_check(&ssl->handshake->ecjpake_ctx) != 0)![]()
if ((ret = mbedtls_ecjpake_read_round_one(&ssl->handshake->ecjpake_ctx,![]()
ssl->handshake->cli_exts |= MBEDTLS_TLS_EXT_ECJPAKE_KKPP_OK;![]()
(ssl->handshake->cli_exts & MBEDTLS_TLS_EXT_ECJPAKE_KKPP_OK) == 0) {![]()
if (cli_msg_seq != ssl->handshake->in_msg_seq) {![]()
ssl->handshake->in_msg_seq++;![]()
ssl->handshake->out_msg_seq = cli_msg_seq;![]()
ssl->handshake->in_msg_seq = cli_msg_seq + 1;![]()
ssl->handshake->cookie_verify_result = 1;![]()
ssl->handshake->cookie_verify_result = 0;![]()
if (ssl->handshake->ciphersuite_info->key_exchange !=![]()
ret = mbedtls_ecjpake_write_round_one(&ssl->handshake->ecjpake_ctx,![]()
ssl->handshake->cookie_verify_result != 0) {![]()
&ssl->handshake->ecjpake_ctx,![]()
if ((ret = mbedtls_dhm_set_group(&ssl->handshake->dhm_ctx,![]()
&ssl->handshake->dhm_ctx,![]()
(int) mbedtls_dhm_get_len(&ssl->handshake->dhm_ctx),![]()
if ((ret = mbedtls_dhm_read_public(&ssl->handshake->dhm_ctx, *p, n)) != 0) {![]()
if ((ret = mbedtls_dhm_calc_secret(&ssl->handshake->dhm_ctx,![]()
ssl->handshake->premaster,![]()
&ssl->handshake->pmslen,![]()
if ((ret = mbedtls_ecdh_read_public(&ssl->handshake->ecdh_ctx,![]()
ret = mbedtls_ecjpake_read_round_two(&ssl->handshake->ecjpake_ctx,![]()
ret = mbedtls_ecjpake_derive_secret(&ssl->handshake->ecjpake_ctx,![]()
ssl->handshake->premaster, 32, &ssl->handshake->pmslen,
mbedtls_ssl_context::handshake is written by 2 functions and is read by 117 functions:
![]()
mbedtls_ssl_context::handshake