diff options
Diffstat (limited to 'src/lib/libssl/ssl_srvr.c')
-rw-r--r-- | src/lib/libssl/ssl_srvr.c | 42 |
1 files changed, 21 insertions, 21 deletions
diff --git a/src/lib/libssl/ssl_srvr.c b/src/lib/libssl/ssl_srvr.c index 1bbe551b3c..1aa0324b15 100644 --- a/src/lib/libssl/ssl_srvr.c +++ b/src/lib/libssl/ssl_srvr.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: ssl_srvr.c,v 1.120 2021/10/23 08:34:36 jsing Exp $ */ | 1 | /* $OpenBSD: ssl_srvr.c,v 1.121 2021/10/23 13:36:03 jsing Exp $ */ |
2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) | 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) |
3 | * All rights reserved. | 3 | * All rights reserved. |
4 | * | 4 | * |
@@ -183,7 +183,7 @@ ssl3_accept(SSL *s) | |||
183 | errno = 0; | 183 | errno = 0; |
184 | 184 | ||
185 | if (SSL_is_dtls(s)) | 185 | if (SSL_is_dtls(s)) |
186 | listen = D1I(s)->listen; | 186 | listen = s->d1->listen; |
187 | 187 | ||
188 | /* init things to blank */ | 188 | /* init things to blank */ |
189 | s->internal->in_handshake++; | 189 | s->internal->in_handshake++; |
@@ -191,7 +191,7 @@ ssl3_accept(SSL *s) | |||
191 | SSL_clear(s); | 191 | SSL_clear(s); |
192 | 192 | ||
193 | if (SSL_is_dtls(s)) | 193 | if (SSL_is_dtls(s)) |
194 | D1I(s)->listen = listen; | 194 | s->d1->listen = listen; |
195 | 195 | ||
196 | for (;;) { | 196 | for (;;) { |
197 | state = S3I(s)->hs.state; | 197 | state = S3I(s)->hs.state; |
@@ -332,14 +332,14 @@ ssl3_accept(SSL *s) | |||
332 | /* If we're just listening, stop here */ | 332 | /* If we're just listening, stop here */ |
333 | if (listen && S3I(s)->hs.state == SSL3_ST_SW_SRVR_HELLO_A) { | 333 | if (listen && S3I(s)->hs.state == SSL3_ST_SW_SRVR_HELLO_A) { |
334 | ret = 2; | 334 | ret = 2; |
335 | D1I(s)->listen = 0; | 335 | s->d1->listen = 0; |
336 | /* | 336 | /* |
337 | * Set expected sequence numbers to | 337 | * Set expected sequence numbers to |
338 | * continue the handshake. | 338 | * continue the handshake. |
339 | */ | 339 | */ |
340 | D1I(s)->handshake_read_seq = 2; | 340 | s->d1->handshake_read_seq = 2; |
341 | D1I(s)->handshake_write_seq = 1; | 341 | s->d1->handshake_write_seq = 1; |
342 | D1I(s)->next_handshake_write_seq = 1; | 342 | s->d1->next_handshake_write_seq = 1; |
343 | goto end; | 343 | goto end; |
344 | } | 344 | } |
345 | } else { | 345 | } else { |
@@ -584,7 +584,7 @@ ssl3_accept(SSL *s) | |||
584 | case SSL3_ST_SR_CERT_VRFY_A: | 584 | case SSL3_ST_SR_CERT_VRFY_A: |
585 | case SSL3_ST_SR_CERT_VRFY_B: | 585 | case SSL3_ST_SR_CERT_VRFY_B: |
586 | if (SSL_is_dtls(s)) | 586 | if (SSL_is_dtls(s)) |
587 | D1I(s)->change_cipher_spec_ok = 1; | 587 | s->d1->change_cipher_spec_ok = 1; |
588 | else | 588 | else |
589 | s->s3->flags |= SSL3_FLAGS_CCS_OK; | 589 | s->s3->flags |= SSL3_FLAGS_CCS_OK; |
590 | 590 | ||
@@ -599,7 +599,7 @@ ssl3_accept(SSL *s) | |||
599 | case SSL3_ST_SR_FINISHED_A: | 599 | case SSL3_ST_SR_FINISHED_A: |
600 | case SSL3_ST_SR_FINISHED_B: | 600 | case SSL3_ST_SR_FINISHED_B: |
601 | if (SSL_is_dtls(s)) | 601 | if (SSL_is_dtls(s)) |
602 | D1I(s)->change_cipher_spec_ok = 1; | 602 | s->d1->change_cipher_spec_ok = 1; |
603 | else | 603 | else |
604 | s->s3->flags |= SSL3_FLAGS_CCS_OK; | 604 | s->s3->flags |= SSL3_FLAGS_CCS_OK; |
605 | ret = ssl3_get_finished(s, SSL3_ST_SR_FINISHED_A, | 605 | ret = ssl3_get_finished(s, SSL3_ST_SR_FINISHED_A, |
@@ -706,10 +706,10 @@ ssl3_accept(SSL *s) | |||
706 | 706 | ||
707 | if (SSL_is_dtls(s)) { | 707 | if (SSL_is_dtls(s)) { |
708 | /* Done handshaking, next message is client hello. */ | 708 | /* Done handshaking, next message is client hello. */ |
709 | D1I(s)->handshake_read_seq = 0; | 709 | s->d1->handshake_read_seq = 0; |
710 | /* Next message is server hello. */ | 710 | /* Next message is server hello. */ |
711 | D1I(s)->handshake_write_seq = 0; | 711 | s->d1->handshake_write_seq = 0; |
712 | D1I(s)->next_handshake_write_seq = 0; | 712 | s->d1->next_handshake_write_seq = 0; |
713 | } | 713 | } |
714 | goto end; | 714 | goto end; |
715 | /* break; */ | 715 | /* break; */ |
@@ -924,7 +924,7 @@ ssl3_get_client_hello(SSL *s) | |||
924 | * message has not been sent - make sure that it does not cause | 924 | * message has not been sent - make sure that it does not cause |
925 | * an overflow. | 925 | * an overflow. |
926 | */ | 926 | */ |
927 | if (CBS_len(&cookie) > sizeof(D1I(s)->rcvd_cookie)) { | 927 | if (CBS_len(&cookie) > sizeof(s->d1->rcvd_cookie)) { |
928 | al = SSL_AD_DECODE_ERROR; | 928 | al = SSL_AD_DECODE_ERROR; |
929 | SSLerror(s, SSL_R_COOKIE_MISMATCH); | 929 | SSLerror(s, SSL_R_COOKIE_MISMATCH); |
930 | goto fatal_err; | 930 | goto fatal_err; |
@@ -936,21 +936,21 @@ ssl3_get_client_hello(SSL *s) | |||
936 | size_t cookie_len; | 936 | size_t cookie_len; |
937 | 937 | ||
938 | /* XXX - rcvd_cookie seems to only be used here... */ | 938 | /* XXX - rcvd_cookie seems to only be used here... */ |
939 | if (!CBS_write_bytes(&cookie, D1I(s)->rcvd_cookie, | 939 | if (!CBS_write_bytes(&cookie, s->d1->rcvd_cookie, |
940 | sizeof(D1I(s)->rcvd_cookie), &cookie_len)) | 940 | sizeof(s->d1->rcvd_cookie), &cookie_len)) |
941 | goto err; | 941 | goto err; |
942 | 942 | ||
943 | if (s->ctx->internal->app_verify_cookie_cb != NULL) { | 943 | if (s->ctx->internal->app_verify_cookie_cb != NULL) { |
944 | if (s->ctx->internal->app_verify_cookie_cb(s, | 944 | if (s->ctx->internal->app_verify_cookie_cb(s, |
945 | D1I(s)->rcvd_cookie, cookie_len) == 0) { | 945 | s->d1->rcvd_cookie, cookie_len) == 0) { |
946 | al = SSL_AD_HANDSHAKE_FAILURE; | 946 | al = SSL_AD_HANDSHAKE_FAILURE; |
947 | SSLerror(s, SSL_R_COOKIE_MISMATCH); | 947 | SSLerror(s, SSL_R_COOKIE_MISMATCH); |
948 | goto fatal_err; | 948 | goto fatal_err; |
949 | } | 949 | } |
950 | /* else cookie verification succeeded */ | 950 | /* else cookie verification succeeded */ |
951 | /* XXX - can d1->cookie_len > sizeof(rcvd_cookie) ? */ | 951 | /* XXX - can d1->cookie_len > sizeof(rcvd_cookie) ? */ |
952 | } else if (timingsafe_memcmp(D1I(s)->rcvd_cookie, | 952 | } else if (timingsafe_memcmp(s->d1->rcvd_cookie, |
953 | D1I(s)->cookie, D1I(s)->cookie_len) != 0) { | 953 | s->d1->cookie, s->d1->cookie_len) != 0) { |
954 | /* default verification */ | 954 | /* default verification */ |
955 | al = SSL_AD_HANDSHAKE_FAILURE; | 955 | al = SSL_AD_HANDSHAKE_FAILURE; |
956 | SSLerror(s, SSL_R_COOKIE_MISMATCH); | 956 | SSLerror(s, SSL_R_COOKIE_MISMATCH); |
@@ -1166,8 +1166,8 @@ ssl3_send_dtls_hello_verify_request(SSL *s) | |||
1166 | 1166 | ||
1167 | if (S3I(s)->hs.state == DTLS1_ST_SW_HELLO_VERIFY_REQUEST_A) { | 1167 | if (S3I(s)->hs.state == DTLS1_ST_SW_HELLO_VERIFY_REQUEST_A) { |
1168 | if (s->ctx->internal->app_gen_cookie_cb == NULL || | 1168 | if (s->ctx->internal->app_gen_cookie_cb == NULL || |
1169 | s->ctx->internal->app_gen_cookie_cb(s, D1I(s)->cookie, | 1169 | s->ctx->internal->app_gen_cookie_cb(s, s->d1->cookie, |
1170 | &(D1I(s)->cookie_len)) == 0) { | 1170 | &(s->d1->cookie_len)) == 0) { |
1171 | SSLerror(s, ERR_R_INTERNAL_ERROR); | 1171 | SSLerror(s, ERR_R_INTERNAL_ERROR); |
1172 | return 0; | 1172 | return 0; |
1173 | } | 1173 | } |
@@ -1184,7 +1184,7 @@ ssl3_send_dtls_hello_verify_request(SSL *s) | |||
1184 | goto err; | 1184 | goto err; |
1185 | if (!CBB_add_u8_length_prefixed(&verify, &cookie)) | 1185 | if (!CBB_add_u8_length_prefixed(&verify, &cookie)) |
1186 | goto err; | 1186 | goto err; |
1187 | if (!CBB_add_bytes(&cookie, D1I(s)->cookie, D1I(s)->cookie_len)) | 1187 | if (!CBB_add_bytes(&cookie, s->d1->cookie, s->d1->cookie_len)) |
1188 | goto err; | 1188 | goto err; |
1189 | if (!ssl3_handshake_msg_finish(s, &cbb)) | 1189 | if (!ssl3_handshake_msg_finish(s, &cbb)) |
1190 | goto err; | 1190 | goto err; |