From: Igor Goncharovsky Date: Fri, 9 Sep 2022 17:20:18 +0000 (+0600) Subject: res_pjsip_outbound_registration: Allow to use multiple proxies for registration X-Git-Tag: 19.8.0-rc1~9 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=09af7e0acacec7df57ae00b7a40acf167ca7361a;p=thirdparty%2Fasterisk.git res_pjsip_outbound_registration: Allow to use multiple proxies for registration Current registration code use pjsip_parse_uri to verify outbound_proxy that is different from the reading this option for the endpoint. This made value with multiple proxies invalid for registration pjsip settings. Removing URI validation helps to use registration through multiple proxies. ASTERISK-30217 #close Change-Id: I064558e66f04b9f3260c46181812a01349761357 --- diff --git a/res/res_pjsip_outbound_registration.c b/res/res_pjsip_outbound_registration.c index c85b5ee5b2..79cba6a45d 100644 --- a/res/res_pjsip_outbound_registration.c +++ b/res/res_pjsip_outbound_registration.c @@ -1827,20 +1827,8 @@ static int sip_outbound_registration_regc_alloc(void *data) return -1; } - if (!ast_strlen_zero(registration->outbound_proxy)) { - pj_strdup2_with_null(pool, &tmp, registration->outbound_proxy); - uri = pjsip_parse_uri(pool, tmp.ptr, tmp.slen, 0); - if (!uri) { - ast_log(LOG_ERROR, "Invalid outbound proxy URI '%s' specified on outbound registration '%s'\n", - registration->outbound_proxy, ast_sorcery_object_get_id(registration)); - pjsip_endpt_release_pool(ast_sip_get_pjsip_endpoint(), pool); - return -1; - } - } - pjsip_endpt_release_pool(ast_sip_get_pjsip_endpoint(), pool); - ast_assert(state->client_state->client == NULL); if (pjsip_regc_create(ast_sip_get_pjsip_endpoint(), state->client_state, sip_outbound_registration_response_cb,