Fix a mem leak in NPN handling
authorMatt Caswell <matt@openssl.org>
Fri, 9 Sep 2016 09:53:39 +0000 (10:53 +0100)
committerMatt Caswell <matt@openssl.org>
Thu, 22 Sep 2016 08:22:05 +0000 (09:22 +0100)
commit38f59bd1f1da9f5ef67044b35af26528e5b183dd
tree542d4d41ffedfaab002e64557b0f1ffb45bb2327
parentea39b16b71e4e72a228a4535bd6d6a02c5edbc1f
Fix a mem leak in NPN handling

If a server sent multiple NPN extensions in a single ClientHello then a
mem leak can occur. This will only happen where the client has requested
NPN in the first place. It does not occur during renegotiation. Therefore
the maximum that could be leaked in a single connection with a malicious
server is 64k (the maximum size of the ServerHello extensions section). As
this is client side, only occurs if NPN has been requested and does not
occur during renegotiation this is unlikely to be exploitable.

Issue reported by Shi Lei.

Reviewed-by: Rich Salz <rsalz@openssl.org>
ssl/t1_lib.c