mirror of
https://gitlab.linphone.org/BC/public/linphone-iphone.git
synced 2026-01-28 08:39:20 +00:00
Set an ICE check list to the Failed state if the corresponding media stream has been deactivated by the peer.
This commit is contained in:
parent
011750b6cd
commit
7b6314c381
3 changed files with 15 additions and 0 deletions
|
|
@ -46,6 +46,9 @@ void linphone_core_update_streams(LinphoneCore *lc, LinphoneCall *call, SalMedia
|
|||
call->media_pending=TRUE;
|
||||
}
|
||||
call->resultdesc=new_md;
|
||||
if (call->ice_session != NULL) {
|
||||
linphone_core_deactivate_ice_for_deactivated_media_streams(call, call->resultdesc);
|
||||
}
|
||||
if (call->audiostream && call->audiostream->ticker){
|
||||
/* we already started media: check if we really need to restart it*/
|
||||
if (oldmd){
|
||||
|
|
|
|||
|
|
@ -813,6 +813,17 @@ void linphone_core_update_ice_from_remote_media_description(LinphoneCall *call,
|
|||
}
|
||||
}
|
||||
|
||||
void linphone_core_deactivate_ice_for_deactivated_media_streams(LinphoneCall *call, const SalMediaDescription *md)
|
||||
{
|
||||
int i;
|
||||
for (i = 0; i < md->nstreams; i++) {
|
||||
IceCheckList *cl = ice_session_check_list(call->ice_session, i);
|
||||
if (cl && (md->streams[i].rtp_port == 0)) {
|
||||
if (cl->state != ICL_Completed) ice_check_list_set_state(cl, ICL_Failed);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
LinphoneCall * is_a_linphone_call(void *user_pointer){
|
||||
LinphoneCall *call=(LinphoneCall*)user_pointer;
|
||||
if (call==NULL) return NULL;
|
||||
|
|
|
|||
|
|
@ -224,6 +224,7 @@ void linphone_core_run_stun_tests(LinphoneCore *lc, LinphoneCall *call);
|
|||
int linphone_core_gather_ice_candidates(LinphoneCore *lc, LinphoneCall *call);
|
||||
void linphone_core_update_local_media_description_from_ice(SalMediaDescription *desc, IceSession *session);
|
||||
void linphone_core_update_ice_from_remote_media_description(LinphoneCall *call, const SalMediaDescription *md);
|
||||
void linphone_core_deactivate_ice_for_deactivated_media_streams(LinphoneCall *call, const SalMediaDescription *md);
|
||||
|
||||
void linphone_core_send_initial_subscribes(LinphoneCore *lc);
|
||||
void linphone_core_write_friends_config(LinphoneCore* lc);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue