From 8c836c845b8893c994c282fa694d85448dcfc17d Mon Sep 17 00:00:00 2001
From: Iryna Antsyferova <iryna.antsyferova@iopsys.eu>
Date: Thu, 13 Mar 2025 11:12:04 +0000
Subject: [PATCH] Validate pjsip_tpselector assignment to prevent crash during
 transport change, REF 16526

---
 res/res_pjsip_outbound_registration.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/res/res_pjsip_outbound_registration.c b/res/res_pjsip_outbound_registration.c
index efccb0c6a1..dce51468db 100644
--- a/res/res_pjsip_outbound_registration.c
+++ b/res/res_pjsip_outbound_registration.c
@@ -2759,7 +2759,11 @@ static int sip_outbound_registration_regc_alloc(void *data)
 		return -1;
 	}
 
-	ast_sip_set_tpselector_from_transport_name(state->client_state->transport_name, &selector);
+	if (ast_sip_set_tpselector_from_transport_name(state->client_state->transport_name, &selector)) {
+		ast_log(LOG_ERROR, "Failed to set tpselector for %s\n", state->client_state->transport_name);
+		return -1;
+	}
+
 	pjsip_regc_set_transport(state->client_state->client, &selector);
 
 	if (!ast_strlen_zero(registration->outbound_proxy)) {
-- 
GitLab