• Home
  • Raw
  • Download

Lines Matching refs:hs

168   UniquePtr<SSL_HANDSHAKE> hs = MakeUnique<SSL_HANDSHAKE>(ssl);  in ssl_handshake_new()  local
169 if (!hs || !hs->transcript.Init()) { in ssl_handshake_new()
172 hs->config = ssl->config.get(); in ssl_handshake_new()
173 if (!hs->config) { in ssl_handshake_new()
174 assert(hs->config); in ssl_handshake_new()
177 return hs; in ssl_handshake_new()
231 bool ssl_hash_message(SSL_HANDSHAKE *hs, const SSLMessage &msg) { in ssl_hash_message() argument
237 return hs->transcript.Update(msg.raw); in ssl_hash_message()
291 enum ssl_verify_result_t ssl_verify_peer_cert(SSL_HANDSHAKE *hs) { in ssl_verify_peer_cert() argument
292 SSL *const ssl = hs->ssl; in ssl_verify_peer_cert()
301 sk_CRYPTO_BUFFER_num(hs->new_session->certs.get())) { in ssl_verify_peer_cert()
307 for (size_t i = 0; i < sk_CRYPTO_BUFFER_num(hs->new_session->certs.get()); in ssl_verify_peer_cert()
312 sk_CRYPTO_BUFFER_value(hs->new_session->certs.get(), i); in ssl_verify_peer_cert()
327 hs->new_session->ocsp_response = UpRef(prev_session->ocsp_response); in ssl_verify_peer_cert()
328 hs->new_session->signed_cert_timestamp_list = in ssl_verify_peer_cert()
330 hs->new_session->verify_result = prev_session->verify_result; in ssl_verify_peer_cert()
336 if (hs->config->custom_verify_callback != nullptr) { in ssl_verify_peer_cert()
337 ret = hs->config->custom_verify_callback(ssl, &alert); in ssl_verify_peer_cert()
340 hs->new_session->verify_result = X509_V_OK; in ssl_verify_peer_cert()
344 if (hs->config->verify_mode == SSL_VERIFY_NONE) { in ssl_verify_peer_cert()
348 hs->new_session->verify_result = X509_V_ERR_APPLICATION_VERIFICATION; in ssl_verify_peer_cert()
355 hs->new_session.get(), hs, &alert) in ssl_verify_peer_cert()
368 hs->config->ocsp_stapling_enabled && in ssl_verify_peer_cert()
391 enum ssl_verify_result_t ssl_reverify_peer_cert(SSL_HANDSHAKE *hs) { in ssl_reverify_peer_cert() argument
392 SSL *const ssl = hs->ssl; in ssl_reverify_peer_cert()
394 assert(hs->config->verify_mode != SSL_VERIFY_NONE); in ssl_reverify_peer_cert()
398 if (hs->config->custom_verify_callback != nullptr) { in ssl_reverify_peer_cert()
399 ret = hs->config->custom_verify_callback(ssl, &alert); in ssl_reverify_peer_cert()
410 uint16_t ssl_get_grease_value(SSL_HANDSHAKE *hs, in ssl_get_grease_value() argument
416 if (!hs->grease_seeded) { in ssl_get_grease_value()
417 RAND_bytes(hs->grease_seed, sizeof(hs->grease_seed)); in ssl_get_grease_value()
418 hs->grease_seeded = true; in ssl_get_grease_value()
422 uint16_t ret = hs->grease_seed[index]; in ssl_get_grease_value()
428 enum ssl_hs_wait_t ssl_get_finished(SSL_HANDSHAKE *hs) { in ssl_get_finished() argument
429 SSL *const ssl = hs->ssl; in ssl_get_finished()
442 if (!hs->transcript.GetFinishedMAC(finished, &finished_len, in ssl_get_finished()
444 !ssl_hash_message(hs, msg)) { in ssl_get_finished()
477 bool ssl_send_finished(SSL_HANDSHAKE *hs) { in ssl_send_finished() argument
478 SSL *const ssl = hs->ssl; in ssl_send_finished()
483 if (!hs->transcript.GetFinishedMAC(finished, &finished_len, session, in ssl_send_finished()
522 bool ssl_output_cert_chain(SSL_HANDSHAKE *hs) { in ssl_output_cert_chain() argument
525 if (!hs->ssl->method->init_message(hs->ssl, cbb.get(), &body, in ssl_output_cert_chain()
527 !ssl_add_cert_chain(hs, &body) || in ssl_output_cert_chain()
528 !ssl_add_message_cbb(hs->ssl, cbb.get())) { in ssl_output_cert_chain()
536 int ssl_run_handshake(SSL_HANDSHAKE *hs, bool *out_early_return) { in ssl_run_handshake() argument
537 SSL *const ssl = hs->ssl; in ssl_run_handshake()
540 switch (hs->wait) { in ssl_run_handshake()
542 ERR_restore_state(hs->error.get()); in ssl_run_handshake()
557 hs->wait = ssl_hs_ok; in ssl_run_handshake()
559 if (hs->wait != ssl_hs_read_change_cipher_spec) { in ssl_run_handshake()
569 if (hs->wait == ssl_hs_read_change_cipher_spec) { in ssl_run_handshake()
577 hs->wait == ssl_hs_read_server_hello) { in ssl_run_handshake()
604 if (ssl->s3->hs->can_early_read) { in ssl_run_handshake()
609 hs->wait = ssl_hs_ok; in ssl_run_handshake()
615 hs->wait = ssl_hs_ok; in ssl_run_handshake()
620 hs->wait = ssl_hs_ok; in ssl_run_handshake()
625 hs->wait = ssl_hs_handback; in ssl_run_handshake()
630 hs->wait = ssl_hs_ok; in ssl_run_handshake()
635 hs->wait = ssl_hs_ok; in ssl_run_handshake()
640 hs->wait = ssl_hs_ok; in ssl_run_handshake()
645 hs->wait = ssl_hs_ok; in ssl_run_handshake()
650 hs->wait = ssl_hs_ok; in ssl_run_handshake()
655 hs->wait = ssl_hs_ok; in ssl_run_handshake()
662 hs->can_early_write = false; in ssl_run_handshake()
667 hs->wait = ssl_hs_ok; in ssl_run_handshake()
675 hs->wait = ssl->do_handshake(hs); in ssl_run_handshake()
676 if (hs->wait == ssl_hs_error) { in ssl_run_handshake()
677 hs->error.reset(ERR_save_state()); in ssl_run_handshake()
680 if (hs->wait == ssl_hs_ok) { in ssl_run_handshake()