Lines Matching refs:msg_hdr
279 const struct hm_header_st *msg_hdr = &s->d1->w_msg_hdr; in dtls1_do_write() local
287 *p++ = msg_hdr->type; in dtls1_do_write()
288 l2n3(msg_hdr->msg_len, p); in dtls1_do_write()
289 s2n(msg_hdr->seq, p); in dtls1_do_write()
291 l2n3(msg_hdr->msg_len, p); in dtls1_do_write()
333 struct hm_header_st *msg_hdr; in dtls_get_message() local
339 msg_hdr = &s->d1->r_msg_hdr; in dtls_get_message()
340 memset(msg_hdr, 0, sizeof(*msg_hdr)); in dtls_get_message()
367 msg_len = msg_hdr->msg_len; in dtls_get_message()
370 *(p++) = msg_hdr->type; in dtls_get_message()
372 s2n(msg_hdr->seq, p); in dtls_get_message()
376 memset(msg_hdr, 0, sizeof(*msg_hdr)); in dtls_get_message()
439 static int dtls1_preprocess_fragment(SSL *s, struct hm_header_st *msg_hdr) in dtls1_preprocess_fragment() argument
443 msg_len = msg_hdr->msg_len; in dtls1_preprocess_fragment()
444 frag_off = msg_hdr->frag_off; in dtls1_preprocess_fragment()
445 frag_len = msg_hdr->frag_len; in dtls1_preprocess_fragment()
466 s->s3.tmp.message_type = msg_hdr->type; in dtls1_preprocess_fragment()
467 s->d1->r_msg_hdr.type = msg_hdr->type; in dtls1_preprocess_fragment()
468 s->d1->r_msg_hdr.seq = msg_hdr->seq; in dtls1_preprocess_fragment()
549 dtls1_reassemble_fragment(SSL *s, const struct hm_header_st *msg_hdr) in dtls1_reassemble_fragment() argument
555 size_t frag_len = msg_hdr->frag_len; in dtls1_reassemble_fragment()
558 if ((msg_hdr->frag_off + frag_len) > msg_hdr->msg_len || in dtls1_reassemble_fragment()
559 msg_hdr->msg_len > dtls1_max_handshake_message_len(s)) in dtls1_reassemble_fragment()
568 seq64be[6] = (unsigned char)(msg_hdr->seq >> 8); in dtls1_reassemble_fragment()
569 seq64be[7] = (unsigned char)msg_hdr->seq; in dtls1_reassemble_fragment()
573 frag = dtls1_hm_fragment_new(msg_hdr->msg_len, 1); in dtls1_reassemble_fragment()
576 memcpy(&(frag->msg_header), msg_hdr, sizeof(*msg_hdr)); in dtls1_reassemble_fragment()
581 if (frag->msg_header.msg_len != msg_hdr->msg_len) { in dtls1_reassemble_fragment()
611 frag->fragment + msg_hdr->frag_off, in dtls1_reassemble_fragment()
618 RSMBLY_BITMASK_MARK(frag->reassembly, (long)msg_hdr->frag_off, in dtls1_reassemble_fragment()
619 (long)(msg_hdr->frag_off + frag_len)); in dtls1_reassemble_fragment()
621 if (!ossl_assert(msg_hdr->msg_len > 0)) in dtls1_reassemble_fragment()
623 RSMBLY_BITMASK_IS_COMPLETE(frag->reassembly, (long)msg_hdr->msg_len, in dtls1_reassemble_fragment()
658 dtls1_process_out_of_seq_message(SSL *s, const struct hm_header_st *msg_hdr) in dtls1_process_out_of_seq_message() argument
664 size_t frag_len = msg_hdr->frag_len; in dtls1_process_out_of_seq_message()
667 if ((msg_hdr->frag_off + frag_len) > msg_hdr->msg_len) in dtls1_process_out_of_seq_message()
672 seq64be[6] = (unsigned char)(msg_hdr->seq >> 8); in dtls1_process_out_of_seq_message()
673 seq64be[7] = (unsigned char)msg_hdr->seq; in dtls1_process_out_of_seq_message()
680 if (item != NULL && frag_len != msg_hdr->msg_len) in dtls1_process_out_of_seq_message()
688 if (msg_hdr->seq <= s->d1->handshake_read_seq || in dtls1_process_out_of_seq_message()
689 msg_hdr->seq > s->d1->handshake_read_seq + 10 || item != NULL || in dtls1_process_out_of_seq_message()
690 (s->d1->handshake_read_seq == 0 && msg_hdr->type == SSL3_MT_FINISHED)) { in dtls1_process_out_of_seq_message()
704 if (frag_len != msg_hdr->msg_len) { in dtls1_process_out_of_seq_message()
705 return dtls1_reassemble_fragment(s, msg_hdr); in dtls1_process_out_of_seq_message()
715 memcpy(&(frag->msg_header), msg_hdr, sizeof(*msg_hdr)); in dtls1_process_out_of_seq_message()
760 struct hm_header_st msg_hdr; in dtls_get_reassembled_message() local
809 dtls1_get_message_header(wire, &msg_hdr); in dtls_get_reassembled_message()
811 mlen = msg_hdr.msg_len; in dtls_get_reassembled_message()
812 frag_off = msg_hdr.frag_off; in dtls_get_reassembled_message()
813 frag_len = msg_hdr.frag_len; in dtls_get_reassembled_message()
830 if (msg_hdr.seq != s->d1->handshake_read_seq) { in dtls_get_reassembled_message()
831 *errtype = dtls1_process_out_of_seq_message(s, &msg_hdr); in dtls_get_reassembled_message()
836 *errtype = dtls1_reassemble_fragment(s, &msg_hdr); in dtls_get_reassembled_message()
864 if (!dtls1_preprocess_fragment(s, &msg_hdr)) { in dtls_get_reassembled_message()
1200 struct hm_header_st *msg_hdr = &s->d1->w_msg_hdr; in dtls1_set_message_header_int() local
1202 msg_hdr->type = mt; in dtls1_set_message_header_int()
1203 msg_hdr->msg_len = len; in dtls1_set_message_header_int()
1204 msg_hdr->seq = seq_num; in dtls1_set_message_header_int()
1205 msg_hdr->frag_off = frag_off; in dtls1_set_message_header_int()
1206 msg_hdr->frag_len = frag_len; in dtls1_set_message_header_int()
1212 struct hm_header_st *msg_hdr = &s->d1->w_msg_hdr; in dtls1_fix_message_header() local
1214 msg_hdr->frag_off = frag_off; in dtls1_fix_message_header()
1215 msg_hdr->frag_len = frag_len; in dtls1_fix_message_header()
1220 struct hm_header_st *msg_hdr = &s->d1->w_msg_hdr; in dtls1_write_message_header() local
1222 *p++ = msg_hdr->type; in dtls1_write_message_header()
1223 l2n3(msg_hdr->msg_len, p); in dtls1_write_message_header()
1225 s2n(msg_hdr->seq, p); in dtls1_write_message_header()
1226 l2n3(msg_hdr->frag_off, p); in dtls1_write_message_header()
1227 l2n3(msg_hdr->frag_len, p); in dtls1_write_message_header()
1232 void dtls1_get_message_header(unsigned char *data, struct hm_header_st *msg_hdr) in dtls1_get_message_header() argument
1234 memset(msg_hdr, 0, sizeof(*msg_hdr)); in dtls1_get_message_header()
1235 msg_hdr->type = *(data++); in dtls1_get_message_header()
1236 n2l3(data, msg_hdr->msg_len); in dtls1_get_message_header()
1238 n2s(data, msg_hdr->seq); in dtls1_get_message_header()
1239 n2l3(data, msg_hdr->frag_off); in dtls1_get_message_header()
1240 n2l3(data, msg_hdr->frag_len); in dtls1_get_message_header()