From 3b7ff5ed72c1acfa33584c6b43c654f2c1a570d5 Mon Sep 17 00:00:00 2001 From: Richard Fuchs Date: Sat, 30 Dec 2023 16:00:12 -0500 Subject: [PATCH] MT#55283 protect read with mutex Reading learned_endpoint must also be protected by the mutex. Warned-by: Coverity Change-Id: I9909d58e7f06806f7398c16c750a6063e923d766 (cherry picked from commit e439a27def8bb77e17cb5ee96f40de8d3784b133) --- daemon/media_socket.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/daemon/media_socket.c b/daemon/media_socket.c index 5bc9ad850..cb5106380 100644 --- a/daemon/media_socket.c +++ b/daemon/media_socket.c @@ -2426,11 +2426,10 @@ static bool media_packet_address_check(struct packet_handler_ctx *phc) /* do not pay attention to source addresses of incoming packets for asymmetric streams */ if (MEDIA_ISSET(phc->mp.media, ASYMMETRIC) || phc->mp.stream->el_flags == EL_OFF) { PS_SET(phc->mp.stream, CONFIRMED); - if (MEDIA_ISSET(phc->mp.media, ASYMMETRIC) && !phc->mp.stream->learned_endpoint.address.family) { - mutex_lock(&phc->mp.stream->out_lock); + mutex_lock(&phc->mp.stream->out_lock); + if (MEDIA_ISSET(phc->mp.media, ASYMMETRIC) && !phc->mp.stream->learned_endpoint.address.family) phc->mp.stream->learned_endpoint = phc->mp.fsin; - mutex_unlock(&phc->mp.stream->out_lock); - } + mutex_unlock(&phc->mp.stream->out_lock); } /* confirm sinks for unidirectional streams in order to kernelize */