Lines Matching refs:s

70 static int ssl3_record_app_data_waiting(SSL *s)  in ssl3_record_app_data_waiting()  argument
76 rbuf = RECORD_LAYER_get_rbuf(&s->rlayer); in ssl3_record_app_data_waiting()
105 int early_data_count_ok(SSL *s, size_t length, size_t overhead, int send) in early_data_count_ok() argument
108 SSL_SESSION *sess = s->session; in early_data_count_ok()
115 if (!s->server && sess->ext.max_early_data == 0) { in early_data_count_ok()
116 if (!ossl_assert(s->psksession != NULL in early_data_count_ok()
117 && s->psksession->ext.max_early_data > 0)) { in early_data_count_ok()
118 SSLfatal(s, SSL_AD_INTERNAL_ERROR, ERR_R_INTERNAL_ERROR); in early_data_count_ok()
121 sess = s->psksession; in early_data_count_ok()
124 if (!s->server) in early_data_count_ok()
126 else if (s->ext.early_data != SSL_EARLY_DATA_ACCEPTED) in early_data_count_ok()
127 max_early_data = s->recv_max_early_data; in early_data_count_ok()
129 max_early_data = s->recv_max_early_data < sess->ext.max_early_data in early_data_count_ok()
130 ? s->recv_max_early_data : sess->ext.max_early_data; in early_data_count_ok()
133 SSLfatal(s, send ? SSL_AD_INTERNAL_ERROR : SSL_AD_UNEXPECTED_MESSAGE, in early_data_count_ok()
141 if (s->early_data_count + length > max_early_data) { in early_data_count_ok()
142 SSLfatal(s, send ? SSL_AD_INTERNAL_ERROR : SSL_AD_UNEXPECTED_MESSAGE, in early_data_count_ok()
146 s->early_data_count += length; in early_data_count_ok()
173 int ssl3_get_record(SSL *s) in ssl3_get_record() argument
192 rr = RECORD_LAYER_get_rrec(&s->rlayer); in ssl3_get_record()
193 rbuf = RECORD_LAYER_get_rbuf(&s->rlayer); in ssl3_get_record()
195 max_recs = s->max_pipelines; in ssl3_get_record()
198 sess = s->session; in ssl3_get_record()
204 if ((RECORD_LAYER_get_rstate(&s->rlayer) != SSL_ST_READ_BODY) || in ssl3_get_record()
205 (RECORD_LAYER_get_packet_length(&s->rlayer) in ssl3_get_record()
210 rret = ssl3_read_n(s, SSL3_RT_HEADER_LENGTH, in ssl3_get_record()
215 if (!BIO_get_ktls_recv(s->rbio) || rret == 0) in ssl3_get_record()
219 SSLfatal(s, SSL_AD_BAD_RECORD_MAC, in ssl3_get_record()
223 SSLfatal(s, SSL_AD_RECORD_OVERFLOW, in ssl3_get_record()
227 SSLfatal(s, SSL_AD_PROTOCOL_VERSION, in ssl3_get_record()
236 RECORD_LAYER_set_rstate(&s->rlayer, SSL_ST_READ_BODY); in ssl3_get_record()
238 p = RECORD_LAYER_get_packet(&s->rlayer); in ssl3_get_record()
239 if (!PACKET_buf_init(&pkt, RECORD_LAYER_get_packet(&s->rlayer), in ssl3_get_record()
240 RECORD_LAYER_get_packet_length(&s->rlayer))) { in ssl3_get_record()
241 SSLfatal(s, SSL_AD_INTERNAL_ERROR, ERR_R_INTERNAL_ERROR); in ssl3_get_record()
247 SSLfatal(s, SSL_AD_DECODE_ERROR, ERR_R_INTERNAL_ERROR); in ssl3_get_record()
253 if (s->server && RECORD_LAYER_is_first_record(&s->rlayer) in ssl3_get_record()
272 SSLfatal(s, SSL_AD_RECORD_OVERFLOW, in ssl3_get_record()
278 SSLfatal(s, SSL_AD_DECODE_ERROR, SSL_R_LENGTH_TOO_SHORT); in ssl3_get_record()
288 if (s->msg_callback) in ssl3_get_record()
289 s->msg_callback(0, 0, SSL3_RT_HEADER, p, 5, s, in ssl3_get_record()
290 s->msg_callback_arg); in ssl3_get_record()
291 SSLfatal(s, SSL_AD_DECODE_ERROR, ERR_R_INTERNAL_ERROR); in ssl3_get_record()
297 if (s->msg_callback) in ssl3_get_record()
298 s->msg_callback(0, version, SSL3_RT_HEADER, p, 5, s, in ssl3_get_record()
299 s->msg_callback_arg); in ssl3_get_record()
308 if (!s->first_packet && !SSL_IS_TLS13(s) in ssl3_get_record()
309 && s->hello_retry_request != SSL_HRR_PENDING in ssl3_get_record()
310 && version != (unsigned int)s->version) { in ssl3_get_record()
311 if ((s->version & 0xFF00) == (version & 0xFF00) in ssl3_get_record()
312 && !s->enc_write_ctx && !s->write_hash) { in ssl3_get_record()
322 SSLfatal(s, SSL_AD_NO_ALERT, in ssl3_get_record()
329 s->version = (unsigned short)version; in ssl3_get_record()
331 SSLfatal(s, SSL_AD_PROTOCOL_VERSION, in ssl3_get_record()
337 if (RECORD_LAYER_is_first_record(&s->rlayer)) { in ssl3_get_record()
340 p = RECORD_LAYER_get_packet(&s->rlayer); in ssl3_get_record()
345 SSLfatal(s, SSL_AD_NO_ALERT, SSL_R_HTTP_REQUEST); in ssl3_get_record()
348 SSLfatal(s, SSL_AD_NO_ALERT, in ssl3_get_record()
354 SSLfatal(s, SSL_AD_NO_ALERT, in ssl3_get_record()
358 SSLfatal(s, SSL_AD_PROTOCOL_VERSION, in ssl3_get_record()
364 if (SSL_IS_TLS13(s) && s->enc_read_ctx != NULL) { in ssl3_get_record()
367 || !SSL_IS_FIRST_HANDSHAKE(s)) in ssl3_get_record()
369 || s->statem.enc_read_state in ssl3_get_record()
371 SSLfatal(s, SSL_AD_UNEXPECTED_MESSAGE, in ssl3_get_record()
376 SSLfatal(s, SSL_AD_DECODE_ERROR, in ssl3_get_record()
384 SSLfatal(s, SSL_AD_RECORD_OVERFLOW, in ssl3_get_record()
393 if (SSL_IS_TLS13(s)) { in ssl3_get_record()
395 SSLfatal(s, SSL_AD_RECORD_OVERFLOW, in ssl3_get_record()
407 if (s->expand == NULL) in ssl3_get_record()
411 if (thisrr->length > len && !BIO_get_ktls_recv(s->rbio)) { in ssl3_get_record()
412 SSLfatal(s, SSL_AD_RECORD_OVERFLOW, in ssl3_get_record()
433 rret = ssl3_read_n(s, more, more, 1, 0, &n); in ssl3_get_record()
439 RECORD_LAYER_set_rstate(&s->rlayer, SSL_ST_READ_HEADER); in ssl3_get_record()
448 &(RECORD_LAYER_get_packet(&s->rlayer)[SSL2_RT_HEADER_LENGTH]); in ssl3_get_record()
451 &(RECORD_LAYER_get_packet(&s->rlayer)[SSL3_RT_HEADER_LENGTH]); in ssl3_get_record()
477 RECORD_LAYER_reset_packet_length(&s->rlayer); in ssl3_get_record()
478 RECORD_LAYER_clear_first_record(&s->rlayer); in ssl3_get_record()
481 && SSL_USE_EXPLICIT_IV(s) in ssl3_get_record()
482 && s->enc_read_ctx != NULL in ssl3_get_record()
483 && (EVP_CIPHER_get_flags(EVP_CIPHER_CTX_get0_cipher(s->enc_read_ctx)) in ssl3_get_record()
485 && ssl3_record_app_data_waiting(s)); in ssl3_get_record()
489 && (SSL_IS_TLS13(s) || s->hello_retry_request != SSL_HRR_NONE) in ssl3_get_record()
490 && SSL_IS_FIRST_HANDSHAKE(s)) { in ssl3_get_record()
495 SSLfatal(s, SSL_AD_ILLEGAL_PARAMETER, in ssl3_get_record()
504 RECORD_LAYER_inc_empty_record_count(&s->rlayer); in ssl3_get_record()
505 if (RECORD_LAYER_get_empty_record_count(&s->rlayer) in ssl3_get_record()
507 SSLfatal(s, SSL_AD_UNEXPECTED_MESSAGE, in ssl3_get_record()
512 RECORD_LAYER_set_numrpipes(&s->rlayer, 1); in ssl3_get_record()
521 if (BIO_get_ktls_recv(s->rbio) && !is_ktls_left) in ssl3_get_record()
524 if (s->read_hash != NULL) { in ssl3_get_record()
525 const EVP_MD *tmpmd = EVP_MD_CTX_get0_md(s->read_hash); in ssl3_get_record()
530 SSLfatal(s, SSL_AD_INTERNAL_ERROR, ERR_R_EVP_LIB); in ssl3_get_record()
541 if (SSL_READ_ETM(s) && s->read_hash) { in ssl3_get_record()
548 SSLfatal(s, SSL_AD_DECODE_ERROR, SSL_R_LENGTH_TOO_SHORT); in ssl3_get_record()
553 i = s->method->ssl3_enc->mac(s, thisrr, md, 0 /* not send */ ); in ssl3_get_record()
555 SSLfatal(s, SSL_AD_BAD_RECORD_MAC, in ssl3_get_record()
570 SSLfatal(s, SSL_AD_INTERNAL_ERROR, ERR_R_MALLOC_FAILURE); in ssl3_get_record()
575 enc_err = s->method->ssl3_enc->enc(s, rr, num_recs, 0, macbufs, mac_size); in ssl3_get_record()
584 if (ossl_statem_in_error(s)) { in ssl3_get_record()
588 if (num_recs == 1 && ossl_statem_skip_early_data(s)) { in ssl3_get_record()
596 if (!early_data_count_ok(s, thisrr->length, in ssl3_get_record()
604 RECORD_LAYER_set_numrpipes(&s->rlayer, 1); in ssl3_get_record()
605 RECORD_LAYER_reset_read_sequence(&s->rlayer); in ssl3_get_record()
609 SSLfatal(s, SSL_AD_BAD_RECORD_MAC, in ssl3_get_record()
620 && (s->enc_read_ctx != NULL) in ssl3_get_record()
621 && (!SSL_READ_ETM(s) && EVP_MD_CTX_get0_md(s->read_hash) != NULL)) { in ssl3_get_record()
628 i = s->method->ssl3_enc->mac(s, thisrr, md, 0 /* not send */ ); in ssl3_get_record()
638 if (ossl_statem_in_error(s)) { in ssl3_get_record()
649 SSLfatal(s, SSL_AD_BAD_RECORD_MAC, in ssl3_get_record()
660 if (s->expand != NULL) { in ssl3_get_record()
662 SSLfatal(s, SSL_AD_RECORD_OVERFLOW, in ssl3_get_record()
666 if (!ssl3_do_uncompress(s, thisrr)) { in ssl3_get_record()
667 SSLfatal(s, SSL_AD_DECOMPRESSION_FAILURE, in ssl3_get_record()
673 if (SSL_IS_TLS13(s) in ssl3_get_record()
674 && s->enc_read_ctx != NULL in ssl3_get_record()
680 SSLfatal(s, SSL_AD_UNEXPECTED_MESSAGE, SSL_R_BAD_RECORD_TYPE); in ssl3_get_record()
694 SSLfatal(s, SSL_AD_UNEXPECTED_MESSAGE, SSL_R_BAD_RECORD_TYPE); in ssl3_get_record()
697 if (s->msg_callback) in ssl3_get_record()
698 s->msg_callback(0, s->version, SSL3_RT_INNER_CONTENT_TYPE, in ssl3_get_record()
699 &thisrr->data[end], 1, s, s->msg_callback_arg); in ssl3_get_record()
706 if (SSL_IS_TLS13(s) in ssl3_get_record()
710 SSLfatal(s, SSL_AD_UNEXPECTED_MESSAGE, SSL_R_BAD_LENGTH); in ssl3_get_record()
715 && !BIO_get_ktls_recv(s->rbio)) { in ssl3_get_record()
716 SSLfatal(s, SSL_AD_RECORD_OVERFLOW, SSL_R_DATA_LENGTH_TOO_LONG); in ssl3_get_record()
721 if (s->session != NULL && USE_MAX_FRAGMENT_LENGTH_EXT(s->session) in ssl3_get_record()
722 && thisrr->length > GET_MAX_FRAGMENT_LENGTH(s->session) in ssl3_get_record()
723 && !BIO_get_ktls_recv(s->rbio)) { in ssl3_get_record()
724 SSLfatal(s, SSL_AD_RECORD_OVERFLOW, SSL_R_DATA_LENGTH_TOO_LONG); in ssl3_get_record()
739 RECORD_LAYER_inc_empty_record_count(&s->rlayer); in ssl3_get_record()
740 if (RECORD_LAYER_get_empty_record_count(&s->rlayer) in ssl3_get_record()
742 SSLfatal(s, SSL_AD_UNEXPECTED_MESSAGE, SSL_R_RECORD_TOO_SMALL); in ssl3_get_record()
746 RECORD_LAYER_reset_empty_record_count(&s->rlayer); in ssl3_get_record()
750 if (s->early_data_state == SSL_EARLY_DATA_READING) { in ssl3_get_record()
753 && !early_data_count_ok(s, thisrr->length, 0, 0)) { in ssl3_get_record()
759 RECORD_LAYER_set_numrpipes(&s->rlayer, num_recs); in ssl3_get_record()
822 int ssl3_enc(SSL *s, SSL3_RECORD *inrecs, size_t n_recs, int sending, in ssl3_enc() argument
838 ds = s->enc_write_ctx; in ssl3_enc()
839 if (s->enc_write_ctx == NULL) in ssl3_enc()
842 enc = EVP_CIPHER_CTX_get0_cipher(s->enc_write_ctx); in ssl3_enc()
844 ds = s->enc_read_ctx; in ssl3_enc()
845 if (s->enc_read_ctx == NULL) in ssl3_enc()
848 enc = EVP_CIPHER_CTX_get0_cipher(s->enc_read_ctx); in ssl3_enc()
851 if ((s->session == NULL) || (ds == NULL) || (enc == NULL)) { in ssl3_enc()
910 SSLfatal(s, SSL_AD_INTERNAL_ERROR, ERR_R_INTERNAL_ERROR); in ssl3_enc()
917 SSLfatal(s, SSL_AD_BAD_RECORD_MAC, ERR_R_INTERNAL_ERROR); in ssl3_enc()
929 s->ctx->libctx); in ssl3_enc()
946 int tls1_enc(SSL *s, SSL3_RECORD *recs, size_t n_recs, int sending, in tls1_enc() argument
956 int tlstree_enc = sending ? (s->mac_flags & SSL_MAC_FLAG_WRITE_MAC_TLSTREE) in tls1_enc()
957 : (s->mac_flags & SSL_MAC_FLAG_READ_MAC_TLSTREE); in tls1_enc()
960 SSLfatal(s, SSL_AD_INTERNAL_ERROR, ERR_R_INTERNAL_ERROR); in tls1_enc()
965 if (EVP_MD_CTX_get0_md(s->write_hash)) { in tls1_enc()
966 int n = EVP_MD_CTX_get_size(s->write_hash); in tls1_enc()
968 SSLfatal(s, SSL_AD_INTERNAL_ERROR, ERR_R_INTERNAL_ERROR); in tls1_enc()
972 ds = s->enc_write_ctx; in tls1_enc()
973 if (s->enc_write_ctx == NULL) in tls1_enc()
978 enc = EVP_CIPHER_CTX_get0_cipher(s->enc_write_ctx); in tls1_enc()
980 if (SSL_USE_EXPLICIT_IV(s) in tls1_enc()
992 SSLfatal(s, SSL_AD_INTERNAL_ERROR, ERR_R_INTERNAL_ERROR); in tls1_enc()
994 } else if (RAND_bytes_ex(s->ctx->libctx, recs[ctr].input, in tls1_enc()
996 SSLfatal(s, SSL_AD_INTERNAL_ERROR, ERR_R_INTERNAL_ERROR); in tls1_enc()
1003 if (EVP_MD_CTX_get0_md(s->read_hash)) { in tls1_enc()
1004 int n = EVP_MD_CTX_get_size(s->read_hash); in tls1_enc()
1006 SSLfatal(s, SSL_AD_INTERNAL_ERROR, ERR_R_INTERNAL_ERROR); in tls1_enc()
1010 ds = s->enc_read_ctx; in tls1_enc()
1011 if (s->enc_read_ctx == NULL) in tls1_enc()
1014 enc = EVP_CIPHER_CTX_get0_cipher(s->enc_read_ctx); in tls1_enc()
1017 if ((s->session == NULL) || (ds == NULL) || (enc == NULL)) { in tls1_enc()
1034 SSLfatal(s, SSL_AD_INTERNAL_ERROR, SSL_R_PIPELINE_FAILURE); in tls1_enc()
1045 seq = sending ? RECORD_LAYER_get_write_sequence(&s->rlayer) in tls1_enc()
1046 : RECORD_LAYER_get_read_sequence(&s->rlayer); in tls1_enc()
1048 if (SSL_IS_DTLS(s)) { in tls1_enc()
1052 s2n(sending ? DTLS_RECORD_LAYER_get_w_epoch(&s->rlayer) : in tls1_enc()
1053 DTLS_RECORD_LAYER_get_r_epoch(&s->rlayer), p); in tls1_enc()
1066 buf[ctr][9] = (unsigned char)(s->version >> 8); in tls1_enc()
1067 buf[ctr][10] = (unsigned char)(s->version); in tls1_enc()
1073 SSLfatal(s, SSL_AD_INTERNAL_ERROR, ERR_R_INTERNAL_ERROR); in tls1_enc()
1092 SSLfatal(s, SSL_AD_INTERNAL_ERROR, ERR_R_INTERNAL_ERROR); in tls1_enc()
1119 SSLfatal(s, SSL_AD_INTERNAL_ERROR, SSL_R_PIPELINE_FAILURE); in tls1_enc()
1130 SSLfatal(s, SSL_AD_INTERNAL_ERROR, SSL_R_PIPELINE_FAILURE); in tls1_enc()
1135 if (!SSL_IS_DTLS(s) && tlstree_enc) { in tls1_enc()
1144 if (sending && !SSL_WRITE_ETM(s)) in tls1_enc()
1147 seq = sending ? RECORD_LAYER_get_write_sequence(&s->rlayer) in tls1_enc()
1148 : RECORD_LAYER_get_read_sequence(&s->rlayer); in tls1_enc()
1150 SSLfatal(s, SSL_AD_INTERNAL_ERROR, ERR_R_INTERNAL_ERROR); in tls1_enc()
1160 SSLfatal(s, SSL_AD_INTERNAL_ERROR, ERR_R_INTERNAL_ERROR); in tls1_enc()
1181 } else if (bs != 1 && SSL_USE_EXPLICIT_IV(s)) { in tls1_enc()
1201 SSLfatal(s, SSL_AD_INTERNAL_ERROR, in tls1_enc()
1231 } else if (bs != 1 && SSL_USE_EXPLICIT_IV(s)) { in tls1_enc()
1254 s->ctx->libctx)) in tls1_enc()
1487 int dtls1_process_record(SSL *s, DTLS1_BITMAP *bitmap) in dtls1_process_record() argument
1500 rr = RECORD_LAYER_get_rrec(&s->rlayer); in dtls1_process_record()
1501 sess = s->session; in dtls1_process_record()
1507 rr->input = &(RECORD_LAYER_get_packet(&s->rlayer)[DTLS1_RT_HEADER_LENGTH]); in dtls1_process_record()
1523 SSLfatal(s, SSL_AD_RECORD_OVERFLOW, SSL_R_ENCRYPTED_LENGTH_TOO_LONG); in dtls1_process_record()
1531 if (s->read_hash != NULL) { in dtls1_process_record()
1532 const EVP_MD *tmpmd = EVP_MD_CTX_get0_md(s->read_hash); in dtls1_process_record()
1537 SSLfatal(s, SSL_AD_INTERNAL_ERROR, ERR_R_EVP_LIB); in dtls1_process_record()
1544 if (SSL_READ_ETM(s) && s->read_hash) { in dtls1_process_record()
1548 SSLfatal(s, SSL_AD_DECODE_ERROR, SSL_R_LENGTH_TOO_SHORT); in dtls1_process_record()
1553 i = s->method->ssl3_enc->mac(s, rr, md, 0 /* not send */ ); in dtls1_process_record()
1555 SSLfatal(s, SSL_AD_BAD_RECORD_MAC, in dtls1_process_record()
1572 enc_err = s->method->ssl3_enc->enc(s, rr, 1, 0, &macbuf, mac_size); in dtls1_process_record()
1582 if (ossl_statem_in_error(s)) { in dtls1_process_record()
1588 RECORD_LAYER_reset_packet_length(&s->rlayer); in dtls1_process_record()
1599 && !SSL_READ_ETM(s) in dtls1_process_record()
1600 && (s->enc_read_ctx != NULL) in dtls1_process_record()
1601 && (EVP_MD_CTX_get0_md(s->read_hash) != NULL)) { in dtls1_process_record()
1604 i = s->method->ssl3_enc->mac(s, rr, md, 0 /* not send */ ); in dtls1_process_record()
1615 RECORD_LAYER_reset_packet_length(&s->rlayer); in dtls1_process_record()
1620 if (s->expand != NULL) { in dtls1_process_record()
1622 SSLfatal(s, SSL_AD_RECORD_OVERFLOW, in dtls1_process_record()
1626 if (!ssl3_do_uncompress(s, rr)) { in dtls1_process_record()
1627 SSLfatal(s, SSL_AD_DECOMPRESSION_FAILURE, SSL_R_BAD_DECOMPRESSION); in dtls1_process_record()
1633 if (s->session != NULL && USE_MAX_FRAGMENT_LENGTH_EXT(s->session)) in dtls1_process_record()
1634 max_plain_length = GET_MAX_FRAGMENT_LENGTH(s->session); in dtls1_process_record()
1638 SSLfatal(s, SSL_AD_RECORD_OVERFLOW, SSL_R_DATA_LENGTH_TOO_LONG); in dtls1_process_record()
1653 RECORD_LAYER_reset_packet_length(&s->rlayer); in dtls1_process_record()
1656 dtls1_record_bitmap_update(s, bitmap); in dtls1_process_record()
1668 #define dtls1_get_processed_record(s) \ argument
1669 dtls1_retrieve_buffered_record((s), \
1670 &(DTLS_RECORD_LAYER_get_processed_rcds(&s->rlayer)))
1682 int dtls1_get_record(SSL *s) in dtls1_get_record() argument
1693 rr = RECORD_LAYER_get_rrec(&s->rlayer); in dtls1_get_record()
1700 if (!dtls1_process_buffered_records(s)) { in dtls1_get_record()
1706 if (dtls1_get_processed_record(s)) in dtls1_get_record()
1712 if ((RECORD_LAYER_get_rstate(&s->rlayer) != SSL_ST_READ_BODY) || in dtls1_get_record()
1713 (RECORD_LAYER_get_packet_length(&s->rlayer) < DTLS1_RT_HEADER_LENGTH)) { in dtls1_get_record()
1714 rret = ssl3_read_n(s, DTLS1_RT_HEADER_LENGTH, in dtls1_get_record()
1715 SSL3_BUFFER_get_len(&s->rlayer.rbuf), 0, 1, &n); in dtls1_get_record()
1723 if (RECORD_LAYER_get_packet_length(&s->rlayer) != in dtls1_get_record()
1725 RECORD_LAYER_reset_packet_length(&s->rlayer); in dtls1_get_record()
1729 RECORD_LAYER_set_rstate(&s->rlayer, SSL_ST_READ_BODY); in dtls1_get_record()
1731 p = RECORD_LAYER_get_packet(&s->rlayer); in dtls1_get_record()
1733 if (s->msg_callback) in dtls1_get_record()
1734 s->msg_callback(0, 0, SSL3_RT_HEADER, p, DTLS1_RT_HEADER_LENGTH, in dtls1_get_record()
1735 s, s->msg_callback_arg); in dtls1_get_record()
1746 memcpy(&(RECORD_LAYER_get_read_sequence(&s->rlayer)[2]), p, 6); in dtls1_get_record()
1756 if (!s->first_packet && rr->type != SSL3_RT_ALERT) { in dtls1_get_record()
1757 if (version != s->version) { in dtls1_get_record()
1761 RECORD_LAYER_reset_packet_length(&s->rlayer); in dtls1_get_record()
1766 if ((version & 0xff00) != (s->version & 0xff00)) { in dtls1_get_record()
1770 RECORD_LAYER_reset_packet_length(&s->rlayer); in dtls1_get_record()
1778 RECORD_LAYER_reset_packet_length(&s->rlayer); in dtls1_get_record()
1783 if (s->session != NULL && USE_MAX_FRAGMENT_LENGTH_EXT(s->session) in dtls1_get_record()
1784 … && rr->length > GET_MAX_FRAGMENT_LENGTH(s->session) + SSL3_RT_MAX_ENCRYPTED_OVERHEAD) { in dtls1_get_record()
1788 RECORD_LAYER_reset_packet_length(&s->rlayer); in dtls1_get_record()
1798 RECORD_LAYER_get_packet_length(&s->rlayer) - DTLS1_RT_HEADER_LENGTH) { in dtls1_get_record()
1801 rret = ssl3_read_n(s, more, more, 1, 1, &n); in dtls1_get_record()
1804 if (ossl_statem_in_error(s)) { in dtls1_get_record()
1810 RECORD_LAYER_reset_packet_length(&s->rlayer); in dtls1_get_record()
1820 RECORD_LAYER_set_rstate(&s->rlayer, SSL_ST_READ_HEADER); in dtls1_get_record()
1823 bitmap = dtls1_get_bitmap(s, rr, &is_next_epoch); in dtls1_get_record()
1826 RECORD_LAYER_reset_packet_length(&s->rlayer); /* dump this record */ in dtls1_get_record()
1831 if (!BIO_dgram_is_sctp(SSL_get_rbio(s))) { in dtls1_get_record()
1834 if (!dtls1_record_replay_check(s, bitmap)) { in dtls1_get_record()
1837 RECORD_LAYER_reset_packet_length(&s->rlayer); /* dump this record */ in dtls1_get_record()
1856 if ((SSL_in_init(s) || ossl_statem_get_in_handshake(s))) { in dtls1_get_record()
1857 if (dtls1_buffer_record (s, in dtls1_get_record()
1858 &(DTLS_RECORD_LAYER_get_unprocessed_rcds(&s->rlayer)), in dtls1_get_record()
1866 RECORD_LAYER_reset_packet_length(&s->rlayer); in dtls1_get_record()
1870 if (!dtls1_process_record(s, bitmap)) { in dtls1_get_record()
1871 if (ossl_statem_in_error(s)) { in dtls1_get_record()
1877 RECORD_LAYER_reset_packet_length(&s->rlayer); /* dump this record */ in dtls1_get_record()
1885 int dtls_buffer_listen_record(SSL *s, size_t len, unsigned char *seq, size_t off) in dtls_buffer_listen_record() argument
1889 rr = RECORD_LAYER_get_rrec(&s->rlayer); in dtls_buffer_listen_record()
1897 s->rlayer.packet = RECORD_LAYER_get_rbuf(&s->rlayer)->buf; in dtls_buffer_listen_record()
1898 s->rlayer.packet_length = DTLS1_RT_HEADER_LENGTH + len; in dtls_buffer_listen_record()
1899 rr->data = s->rlayer.packet + DTLS1_RT_HEADER_LENGTH; in dtls_buffer_listen_record()
1901 if (dtls1_buffer_record(s, &(s->rlayer.d->processed_rcds), in dtls_buffer_listen_record()
1902 SSL3_RECORD_get_seq_num(s->rlayer.rrec)) <= 0) { in dtls_buffer_listen_record()