tls_gnutls: Readd support for nonblocking operation

Multimedia / Libav - Martin Storsjö [martin.st] - 20 June 2017 16:55 EDT

The rtmp protocol uses nonblocking reads, to poll for incoming messages from the server while publishing a stream.

Prior to 94599a6de3822b13c94096d764868128f388ba28 and d13b124eaf452b267480074b2e6946538ed03a6e, the tls protocol handled the nonblocking flag, mostly as a side effect from not using custom IO callbacks for reading from the socket. When custom IO callbacks were taken into use in d15eec4d6bdfa3bd4c4b5b7dd2dbd699ba253d02, the handling of a nonblocking socket wasn't necessary for the default blocking mode any longer.

The code was simplified, since it was overlooked that other code within libavformat actually used the tls protocol in nonblocking mode.

This fixes publishing over rtmps, with the gnutls backend.

eb061ad tls_gnutls: Readd support for nonblocking operation
libavformat/tls_gnutls.c | 23 +++++++++++++++++++----
1 file changed, 19 insertions(+), 4 deletions(-)

Upstream: git.libav.org


  • Share