mirror of
https://gitlab.linphone.org/BC/public/linphone-iphone.git
synced 2026-01-17 19:18:06 +00:00
Handle case where ICE is activated and the configured STUN server do not reply.
This commit is contained in:
parent
3cca370ef1
commit
df347a9733
2 changed files with 14 additions and 6 deletions
|
|
@ -692,17 +692,25 @@ void linphone_core_gather_ice_candidates(LinphoneCore *lc, LinphoneCall *call)
|
|||
} while (!((audio_gatherings[0].response == TRUE) && (audio_gatherings[1].response == TRUE)
|
||||
&& (!call->params.has_video || ((video_gatherings[0].response == TRUE) && (video_gatherings[1].response == TRUE)))));
|
||||
|
||||
ice_session_compute_candidates_foundations(ice_session);
|
||||
ice_session_eliminate_redundant_candidates(ice_session);
|
||||
ice_session_choose_default_candidates(ice_session);
|
||||
if ((audio_gatherings[0].response == FALSE) || (audio_gatherings[1].response == FALSE)
|
||||
|| (call->params.has_video && ((video_gatherings[0].response == FALSE) || (video_gatherings[1].response == FALSE)))) {
|
||||
/* Failed some STUN checks, deactivate ICE. */
|
||||
ice_session_destroy(ice_session);
|
||||
ice_session = NULL;
|
||||
sal_op_set_ice_session(call->op, ice_session);
|
||||
} else {
|
||||
ice_session_compute_candidates_foundations(ice_session);
|
||||
ice_session_eliminate_redundant_candidates(ice_session);
|
||||
ice_session_choose_default_candidates(ice_session);
|
||||
}
|
||||
|
||||
close_socket(audio_gatherings[0].sock);
|
||||
close_socket(audio_gatherings[1].sock);
|
||||
ice_dump_candidates(audio_check_list);
|
||||
if (ice_session != NULL) ice_dump_candidates(audio_check_list);
|
||||
if (call->params.has_video && (video_check_list != NULL)) {
|
||||
if (video_gatherings[0].sock != -1) close_socket(video_gatherings[0].sock);
|
||||
if (video_gatherings[1].sock != -1) close_socket(video_gatherings[1].sock);
|
||||
ice_dump_candidates(video_check_list);
|
||||
if (ice_session != NULL) ice_dump_candidates(video_check_list);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -373,7 +373,7 @@ static void add_line(sdp_message_t *msg, int lineno, const SalStreamDescription
|
|||
}
|
||||
|
||||
/*only add a c= line within the stream description if address are differents*/
|
||||
if (strcmp(rtp_addr,sdp_message_c_addr_get(msg, -1, 0))!=0){
|
||||
if (rtp_addr[0]!='\0' && strcmp(rtp_addr,sdp_message_c_addr_get(msg, -1, 0))!=0){
|
||||
bool_t inet6;
|
||||
if (strchr(rtp_addr,':')!=NULL){
|
||||
inet6=TRUE;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue