Fix Seg fault in DTLSv1_listen
authorMatt Caswell <matt@openssl.org>
Mon, 9 Mar 2015 16:09:04 +0000 (16:09 +0000)
committerMatt Caswell <matt@openssl.org>
Thu, 19 Mar 2015 11:11:02 +0000 (11:11 +0000)
commite83ee04bb7de800cdb71d522fa562e99328003a3
treee54a2ae2084559829886206120aa3e16bfdaa368
parent1d2a18dc5a3b3363e17db5af8b6b0273856ac077
Fix Seg fault in DTLSv1_listen

The DTLSv1_listen function is intended to be stateless and processes
the initial ClientHello from many peers. It is common for user code to
loop over the call to DTLSv1_listen until a valid ClientHello is received
with an associated cookie. A defect in the implementation of DTLSv1_listen
means that state is preserved in the SSL object from one invokation to the
next that can lead to a segmentation fault. Erorrs processing the initial
ClientHello can trigger this scenario. An example of such an error could
be that a DTLS1.0 only client is attempting to connect to a DTLS1.2 only
server.

CVE-2015-0207

Reviewed-by: Richard Levitte <levitte@openssl.org>
ssl/d1_lib.c