From 9dccd8a3f7e243ae825f4d33995ebe37541d2d3a Mon Sep 17 00:00:00 2001 From: Martin Pulec Date: Tue, 6 Aug 2024 15:42:38 +0200 Subject: [PATCH] tx encryption: do not send invalid frame If encryption fails, do not pass the data further since it will abort on data_len <= 0 assertion in RTP. --- src/transmit.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/transmit.cpp b/src/transmit.cpp index 78dabf4a0..39540bc68 100644 --- a/src/transmit.cpp +++ b/src/transmit.cpp @@ -755,6 +755,9 @@ tx_send_base(struct tx *tx, struct video_frame *frame, struct rtp *rtp_session, ? sizeof(fec_payload_hdr_t) : sizeof(video_payload_hdr_t), encrypted_data); + if (data_len <= 0) { + return; + } data = encrypted_data; } @@ -888,6 +891,9 @@ audio_tx_send_chan(struct tx *tx, struct rtp *rtp_session, uint32_t timestamp, (char *) rtp_hdr, rtp_hdr_len - sizeof(crypto_payload_hdr_t), encrypted_data); + if (data_len <= 0) { + return; + } data = encrypted_data; }