Sfoglia il codice sorgente

Move has_message logic to ssl3_get_message.

This doesn't particularly matter but is more consistent with DTLS and
avoids the callback being potentially called from two places.

Change-Id: I2f57ca94d2d532c56f37a0bac7000c15b3b4b520
Reviewed-on: https://boringssl-review.googlesource.com/21344
Commit-Queue: David Benjamin <davidben@google.com>
CQ-Verified: CQ bot account: commit-bot@chromium.org <commit-bot@chromium.org>
Reviewed-by: Steven Valdez <svaldez@google.com>
kris/onging/CECPQ3_patch15
David Benjamin 7 anni fa
committed by CQ bot account: commit-bot@chromium.org
parent
commit
03a4b96c12
2 ha cambiato i file con 9 aggiunte e 8 eliminazioni
  1. +1
    -3
      ssl/d1_both.cc
  2. +8
    -5
      ssl/s3_both.cc

+ 1
- 3
ssl/d1_both.cc Vedi File

@@ -433,9 +433,7 @@ bool dtls1_get_message(SSL *ssl, SSLMessage *out) {
CBS_init(&out->raw, frag->data, DTLS1_HM_HEADER_LENGTH + frag->msg_len);
out->is_v2_hello = false;
if (!ssl->s3->has_message) {
ssl_do_msg_callback(
ssl, 0 /* read */, SSL3_RT_HANDSHAKE,
MakeSpan(frag->data, frag->msg_len + DTLS1_HM_HEADER_LENGTH));
ssl_do_msg_callback(ssl, 0 /* read */, SSL3_RT_HANDSHAKE, out->raw);
ssl->s3->has_message = true;
}
return true;


+ 8
- 5
ssl/s3_both.cc Vedi File

@@ -525,6 +525,14 @@ static bool parse_message(SSL *ssl, SSLMessage *out, size_t *out_bytes_needed) {
CBS_init(&out->raw, reinterpret_cast<const uint8_t *>(ssl->init_buf->data),
4 + len);
out->is_v2_hello = ssl->s3->is_v2_hello;
return true;
}

bool ssl3_get_message(SSL *ssl, SSLMessage *out) {
size_t unused;
if (!parse_message(ssl, out, &unused)) {
return false;
}
if (!ssl->s3->has_message) {
if (!out->is_v2_hello) {
ssl_do_msg_callback(ssl, 0 /* read */, SSL3_RT_HANDSHAKE, out->raw);
@@ -534,11 +542,6 @@ static bool parse_message(SSL *ssl, SSLMessage *out, size_t *out_bytes_needed) {
return true;
}

bool ssl3_get_message(SSL *ssl, SSLMessage *out) {
size_t unused;
return parse_message(ssl, out, &unused);
}

int ssl3_read_message(SSL *ssl) {
SSLMessage msg;
size_t bytes_needed;


Caricamento…
Annulla
Salva