openssl/ssl
Matt Caswell 738ad946dd Fix DTLS unprocessed records bug
During a DTLS handshake we may get records destined for the next epoch
arrive before we have processed the CCS. In that case we can't decrypt or
verify the record yet, so we buffer it for later use. When we do receive
the CCS we work through the queue of unprocessed records and process them.

Unfortunately the act of processing wipes out any existing packet data
that we were still working through. This includes any records from the new
epoch that were in the same packet as the CCS. We should only process the
buffered records if we've not got any data left.

Reviewed-by: Richard Levitte <levitte@openssl.org>
2016-08-19 13:52:40 +01:00
..
record Fix DTLS unprocessed records bug 2016-08-19 13:52:40 +01:00
statem Indent ssl/ 2016-08-18 14:02:29 +02:00
bio_ssl.c Fix BIO_pop for SSL BIOs 2016-07-29 14:09:57 +01:00
build.info
d1_lib.c Indent ssl/ 2016-08-18 14:02:29 +02:00
d1_msg.c
d1_srtp.c Indent ssl/ 2016-08-18 14:02:29 +02:00
methods.c Indent ssl/ 2016-08-18 14:02:29 +02:00
packet_locl.h Indent ssl/ 2016-08-18 14:02:29 +02:00
pqueue.c
s3_cbc.c Indent ssl/ 2016-08-18 14:02:29 +02:00
s3_enc.c Indent ssl/ 2016-08-18 14:02:29 +02:00
s3_lib.c Indent ssl/ 2016-08-18 14:02:29 +02:00
s3_msg.c Indent ssl/ 2016-08-18 14:02:29 +02:00
ssl_asn1.c Indent ssl/ 2016-08-18 14:02:29 +02:00
ssl_cert.c Indent ssl/ 2016-08-18 14:02:29 +02:00
ssl_ciph.c Indent ssl/ 2016-08-18 14:02:29 +02:00
ssl_conf.c Indent ssl/ 2016-08-18 14:02:29 +02:00
ssl_err.c Add missing session id and tlsext_status accessors 2016-08-17 10:38:20 +01:00
ssl_init.c Indent ssl/ 2016-08-18 14:02:29 +02:00
ssl_lib.c Indent ssl/ 2016-08-18 14:02:29 +02:00
ssl_locl.h Indent ssl/ 2016-08-18 14:02:29 +02:00
ssl_mcnf.c Indent ssl/ 2016-08-18 14:02:29 +02:00
ssl_rsa.c Indent ssl/ 2016-08-18 14:02:29 +02:00
ssl_sess.c Indent ssl/ 2016-08-18 14:02:29 +02:00
ssl_stat.c Indent ssl/ 2016-08-18 14:02:29 +02:00
ssl_txt.c Indent ssl/ 2016-08-18 14:02:29 +02:00
ssl_utst.c
t1_enc.c Indent ssl/ 2016-08-18 14:02:29 +02:00
t1_ext.c Indent ssl/ 2016-08-18 14:02:29 +02:00
t1_lib.c Indent ssl/ 2016-08-18 14:02:29 +02:00
t1_reneg.c Indent ssl/ 2016-08-18 14:02:29 +02:00
t1_trce.c Indent ssl/ 2016-08-18 14:02:29 +02:00
tls_srp.c Indent ssl/ 2016-08-18 14:02:29 +02:00