This fixes a deadlock while reading a chunked https response, if
authorAman Gupta <aman at tmm1.net>
Mon, 13 Nov 2017 21:02:44 +0000 (15:02 -0600)
committerRodger Combs <rodger.combs@gmail.com>
Mon, 13 Nov 2017 21:04:55 +0000 (15:04 -0600)
commit9c8922acadb5187c274250d6cde653b7bad2559e
tree362b20ba615a41309133a1ac60222a6f366822fe
parenta36a3d7fecdfc50691f01eef984cad6cedb6fb3a
This fixes a deadlock while reading a chunked https response, if
multiple_requests=1 is also set. Without an EOF to signal the end of
the last chunk, tls_read gets stuck forever trying to read more data
than is available. This occurs with the http protocol reproducibly,
because http.c always reads 4kb at a time, and the last chunk of an
http response is often much smaller.

After this commit, tls_read always returns any buffered plaintext
first before attempting to read more encrypted data off the
underlying tcp socket.

Signed-off-by: Rodger Combs <rodger.combs@gmail.com>
libavformat/tls_securetransport.c