[FFmpeg-devel] [PATCH v2 0/8] WHIP + TLS + UDP fixes and SChannel DTLS support

Timo Rothenpieler timo at rothenpieler.org
Wed Jul 9 15:10:27 EEST 2025


On 06/07/2025 20:36, Timo Rothenpieler wrote:
> Second version of the series, with a bunch of the more trivial already
> merged it reduced in size a bit.
> Remaining patches have been revised after comments, and some further fixes
> have been added.
> 
> Original Cover-Letter was:
> 
> This was originally just me attempting to add DTLS support to SChannel,
> so it can be used with the WHIP protocol. But on the way there, a lot of
> random fixes and enhancements accumulated, resulting in this series.
> 
> The main new features are DTLS support for SChannel, which also happens
> to enable support for listen-mode, which was previous unsupported for
> normal TLS as well.
> 
> To enable that, udp.c had to be enhanced to allow reporting the address
> a packet was received from.
> In the process of that I realized that udp.c was clearly not made with
> bidirectional communication in mind, so that had to be fixed as well (
> The fifo buffer was used by both read and write without any checks,
> meaning the two would interfere with each other).
> 
> The rest are misc fixes for issues in WHIP and the associated new tls
> code I found.
> 
> Timo Rothenpieler (8):
>    avformat/tls: move whip specific init out of generic tls code
>    avformat/udp: make recv addr of each packet available
>    avformat/udp: separate rx and tx fifo
>    avformat/udp: add function to set remote address directly
>    avformat/tls: make passing an external socket universal
>    avformat/tls_schannel: add DTLS support
>    avformat/tls_schannel: add option to load server certificate from
>      store
>    avformat/tls_schannel: fix non-blocking write breaking TLS sessions
> 
>   configure                  |    6 +-
>   libavformat/network.h      |    3 +
>   libavformat/tls.c          |    9 -
>   libavformat/tls.h          |   11 +-
>   libavformat/tls_openssl.c  |   26 +-
>   libavformat/tls_schannel.c | 1025 ++++++++++++++++++++++++++++++++----
>   libavformat/udp.c          |   98 +++-
>   libavformat/whip.c         |    9 +-
>   8 files changed, 1044 insertions(+), 143 deletions(-)
> 

I intend to apply the series soon


More information about the ffmpeg-devel mailing list