Skip to content

Commit 7795c7f

Browse files
committed
Use SSL3_HM_HEADER_LENGTH instead of the magic number 4.
ok beck@
1 parent 4d783bd commit 7795c7f

File tree

1 file changed

+14
-13
lines changed

1 file changed

+14
-13
lines changed

lib/libssl/ssl_both.c

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
/* $OpenBSD: ssl_both.c,v 1.34 2021/08/30 19:25:43 jsing Exp $ */
1+
/* $OpenBSD: ssl_both.c,v 1.35 2021/09/03 13:19:12 jsing Exp $ */
22
/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
33
* All rights reserved.
44
*
@@ -418,22 +418,22 @@ ssl3_get_message(SSL *s, int st1, int stn, int mt, long max, int *ok)
418418
goto fatal_err;
419419
}
420420
*ok = 1;
421-
s->internal->init_msg = s->internal->init_buf->data + 4;
421+
s->internal->init_msg = s->internal->init_buf->data +
422+
SSL3_HM_HEADER_LENGTH;
422423
s->internal->init_num = (int)S3I(s)->hs.tls12.message_size;
423424
return s->internal->init_num;
424425
}
425426

426427
p = (unsigned char *)s->internal->init_buf->data;
427428

428-
/* s->internal->init_num < 4 */
429429
if (S3I(s)->hs.state == st1) {
430430
int skip_message;
431431

432432
do {
433-
while (s->internal->init_num < 4) {
433+
while (s->internal->init_num < SSL3_HM_HEADER_LENGTH) {
434434
i = s->method->ssl_read_bytes(s,
435435
SSL3_RT_HANDSHAKE, &p[s->internal->init_num],
436-
4 - s->internal->init_num, 0);
436+
SSL3_HM_HEADER_LENGTH - s->internal->init_num, 0);
437437
if (i <= 0) {
438438
s->internal->rwstate = SSL_READING;
439439
*ok = 0;
@@ -455,20 +455,19 @@ ssl3_get_message(SSL *s, int st1, int stn, int mt, long max, int *ok)
455455
skip_message = 1;
456456

457457
ssl_msg_callback(s, 0,
458-
SSL3_RT_HANDSHAKE, p, 4);
458+
SSL3_RT_HANDSHAKE, p,
459+
SSL3_HM_HEADER_LENGTH);
459460
}
460461
}
461462
} while (skip_message);
462463

463-
/* s->internal->init_num == 4 */
464-
465464
if ((mt >= 0) && (*p != mt)) {
466465
al = SSL_AD_UNEXPECTED_MESSAGE;
467466
SSLerror(s, SSL_R_UNEXPECTED_MESSAGE);
468467
goto fatal_err;
469468
}
470469

471-
CBS_init(&cbs, p, 4);
470+
CBS_init(&cbs, p, SSL3_HM_HEADER_LENGTH);
472471
if (!CBS_get_u8(&cbs, &u8) ||
473472
!CBS_get_u24(&cbs, &l)) {
474473
SSLerror(s, ERR_R_BUF_LIB);
@@ -481,14 +480,16 @@ ssl3_get_message(SSL *s, int st1, int stn, int mt, long max, int *ok)
481480
SSLerror(s, SSL_R_EXCESSIVE_MESSAGE_SIZE);
482481
goto fatal_err;
483482
}
484-
if (l && !BUF_MEM_grow_clean(s->internal->init_buf, l + 4)) {
483+
if (l && !BUF_MEM_grow_clean(s->internal->init_buf,
484+
l + SSL3_HM_HEADER_LENGTH)) {
485485
SSLerror(s, ERR_R_BUF_LIB);
486486
goto err;
487487
}
488488
S3I(s)->hs.tls12.message_size = l;
489489
S3I(s)->hs.state = stn;
490490

491-
s->internal->init_msg = s->internal->init_buf->data + 4;
491+
s->internal->init_msg = s->internal->init_buf->data +
492+
SSL3_HM_HEADER_LENGTH;
492493
s->internal->init_num = 0;
493494
}
494495

@@ -510,11 +511,11 @@ ssl3_get_message(SSL *s, int st1, int stn, int mt, long max, int *ok)
510511
/* Feed this message into MAC computation. */
511512
if (s->internal->mac_packet) {
512513
tls1_transcript_record(s, (unsigned char *)s->internal->init_buf->data,
513-
s->internal->init_num + 4);
514+
s->internal->init_num + SSL3_HM_HEADER_LENGTH);
514515

515516
ssl_msg_callback(s, 0, SSL3_RT_HANDSHAKE,
516517
s->internal->init_buf->data,
517-
(size_t)s->internal->init_num + 4);
518+
(size_t)s->internal->init_num + SSL3_HM_HEADER_LENGTH);
518519
}
519520

520521
*ok = 1;

0 commit comments

Comments
 (0)