瀏覽代碼

Tidy up finish_message logic.

dtls1_finish_message should NULL *out_msg before calling OPENSSL_free,
rather than asking ssl3_complete_message to do it. ssl3_finish_message
has no need to call it at all.

Change-Id: I22054217073690ab391cd19bf9993b1ceada41fd
Reviewed-on: https://boringssl-review.googlesource.com/12231
CQ-Verified: CQ bot account: commit-bot@chromium.org <commit-bot@chromium.org>
Reviewed-by: Steven Valdez <svaldez@google.com>
Reviewed-by: David Benjamin <davidben@google.com>
Commit-Queue: David Benjamin <davidben@google.com>
kris/onging/CECPQ3_patch15
David Benjamin 8 年之前
committed by CQ bot account: commit-bot@chromium.org
父節點
當前提交
ba1660b282
共有 2 個檔案被更改,包括 3 行新增2 行删除
  1. +1
    -0
      ssl/d1_both.c
  2. +2
    -2
      ssl/s3_both.c

+ 1
- 0
ssl/d1_both.c 查看文件

@@ -738,6 +738,7 @@ int dtls1_init_message(SSL *ssl, CBB *cbb, CBB *body, uint8_t type) {

int dtls1_finish_message(SSL *ssl, CBB *cbb, uint8_t **out_msg,
size_t *out_len) {
*out_msg = NULL;
if (!CBB_finish(cbb, out_msg, out_len) ||
*out_len < DTLS1_HM_HEADER_LENGTH) {
OPENSSL_PUT_ERROR(SSL, ERR_R_INTERNAL_ERROR);


+ 2
- 2
ssl/s3_both.c 查看文件

@@ -209,9 +209,9 @@ int ssl3_finish_message(SSL *ssl, CBB *cbb, uint8_t **out_msg,
size_t *out_len) {
if (!CBB_finish(cbb, out_msg, out_len)) {
OPENSSL_PUT_ERROR(SSL, ERR_R_INTERNAL_ERROR);
OPENSSL_free(*out_msg);
return 0;
}

return 1;
}

@@ -231,7 +231,7 @@ int ssl3_queue_message(SSL *ssl, uint8_t *msg, size_t len) {
}

int ssl_complete_message(SSL *ssl, CBB *cbb) {
uint8_t *msg = NULL;
uint8_t *msg;
size_t len;
if (!ssl->method->finish_message(ssl, cbb, &msg, &len) ||
!ssl->method->queue_message(ssl, msg, len)) {


Loading…
取消
儲存