mirror of
				https://github.com/asterisk/asterisk.git
				synced 2025-10-31 18:55:19 +00:00 
			
		
		
		
	config: Improve documentation and behavior of outbound_proxy option.
This change updates the documentation for the outbound_proxy option to ensure it is consistently stated that a full SIP URI must be provided for the option. The res_pjsip_outbound_registration module has also been changed so that the provided outbound_proxy value is checked to ensure it is a URI and if not an error is output stating so. ASTERISK-26782 Change-Id: I6c239a32274846fd44e65b44ad9bf6373479b593
This commit is contained in:
		| @@ -642,7 +642,7 @@ | ||||
|                         ; when placing on hold and sendrecv when taking off hold | ||||
| ;outbound_auth= ; Authentication object used for outbound requests (default: | ||||
|                 ; "") | ||||
| ;outbound_proxy=        ; Proxy through which to send requests a full SIP URI | ||||
| ;outbound_proxy=        ; Proxy through which to send requests, a full SIP URI | ||||
|                         ; must be provided (default: "") | ||||
| ;rewrite_contact=no     ; Allow Contact header to be rewritten with the source | ||||
|                         ; IP address port (default: "no") | ||||
| @@ -877,8 +877,8 @@ | ||||
| ;qualify_timeout=3.0      ; Qualify timeout in fractional seconds (default: "3.0") | ||||
| ;authenticate_qualify=no        ; Authenticates a qualify request if needed | ||||
|                                 ; (default: "no") | ||||
| ;outbound_proxy=        ; Outbound proxy used when sending OPTIONS request | ||||
|                         ; (default: "") | ||||
| ;outbound_proxy=        ; Proxy through which to send OPTIONS requests, a full SIP URI | ||||
|                         ; must be provided (default: "") | ||||
|  | ||||
|  | ||||
| ;==========================SYSTEM SECTION OPTIONS========================= | ||||
| @@ -1045,8 +1045,8 @@ | ||||
| ;max_retries=10 ; Maximum number of registration attempts (default: "10") | ||||
| ;outbound_auth= ; Authentication object to be used for outbound registrations | ||||
|                 ; (default: "") | ||||
| ;outbound_proxy=        ; Outbound Proxy used to send registrations (default: | ||||
|                         ; "") | ||||
| ;outbound_proxy=        ; Proxy through which to send registrations, a full SIP URI | ||||
|                         ; must be provided (default: "") | ||||
| ;retry_interval=60      ; Interval in seconds between retries if outbound | ||||
|                         ; registration is unsuccessful (default: "60") | ||||
| ;forbidden_retry_interval=0     ; Interval used when receiving a 403 Forbidden | ||||
|   | ||||
| @@ -349,7 +349,7 @@ | ||||
| 					</description> | ||||
| 				</configOption> | ||||
| 				<configOption name="outbound_proxy"> | ||||
| 					<synopsis>Proxy through which to send requests, a full SIP URI must be provided</synopsis> | ||||
| 					<synopsis>Full SIP URI of the outbound proxy used to send requests</synopsis> | ||||
| 				</configOption> | ||||
| 				<configOption name="rewrite_contact"> | ||||
| 					<synopsis>Allow Contact header to be rewritten with the source IP address-port</synopsis> | ||||
|   | ||||
| @@ -69,7 +69,7 @@ | ||||
| 					</description> | ||||
| 				</configOption> | ||||
| 				<configOption name="outbound_proxy" default=""> | ||||
| 					<synopsis>SIP URI of the outbound proxy used to send publishes</synopsis> | ||||
| 					<synopsis>Full SIP URI of the outbound proxy used to send publishes</synopsis> | ||||
| 				</configOption> | ||||
| 				<configOption name="server_uri"> | ||||
| 					<synopsis>SIP URI of the server and entity to publish to</synopsis> | ||||
|   | ||||
| @@ -96,7 +96,7 @@ | ||||
| 					</description> | ||||
| 				</configOption> | ||||
| 				<configOption name="outbound_proxy" default=""> | ||||
| 					<synopsis>Outbound Proxy used to send registrations</synopsis> | ||||
| 					<synopsis>Full SIP URI of the outbound proxy used to send registrations</synopsis> | ||||
| 				</configOption> | ||||
| 				<configOption name="retry_interval" default="60"> | ||||
| 					<synopsis>Interval in seconds between retries if outbound registration is unsuccessful</synopsis> | ||||
| @@ -1209,6 +1209,17 @@ 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); | ||||
|  | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user