Merge "chan_sip.c: Start ICE negotiation when response is sent or received." into 11

changes/91/1791/1
Joshua Colp 10 years ago committed by Gerrit Code Review
commit 640160a351

@ -10525,7 +10525,11 @@ static int process_sdp(struct sip_pvt *p, struct sip_request *req, int t38action
/* Setup audio address and port */
if (p->rtp) {
if (sa && portno > 0) {
start_ice(p->rtp, (req->method != SIP_RESPONSE) ? 0 : 1);
/* Start ICE negotiation here, only when it is response, and setting that we are conrolling agent,
as we are offerer */
if (req->method == SIP_RESPONSE) {
start_ice(p->rtp, 1);
}
ast_sockaddr_set_port(sa, portno);
ast_rtp_instance_set_remote_address(p->rtp, sa);
if (debug) {
@ -13271,6 +13275,11 @@ static enum sip_result add_sdp(struct sip_request *resp, struct sip_pvt *p, int
if (!doing_directmedia) {
if (ast_test_flag(&p->flags[2], SIP_PAGE3_ICE_SUPPORT)) {
add_ice_to_sdp(p->rtp, &a_audio);
/* Start ICE negotiation, and setting that we are controlled agent,
as this is response to offer */
if (resp->method == SIP_RESPONSE) {
start_ice(p->rtp, 0);
}
}
add_dtls_to_sdp(p->rtp, &a_audio);

Loading…
Cancel
Save