Commit graph

937 commits

Author SHA1 Message Date
Ghislain MARY
4b8a215735 Can now use ICE and ping OPTIONS in parallel. 2012-08-09 15:45:22 +02:00
Ghislain MARY
ccfd3c7b2d Update of ICE from remote media description may delete the ICE session, so check that the session exists after the update to prevent crashes. 2012-08-09 14:47:20 +02:00
Ghislain MARY
d0e7a66501 Refactor code to prevent changing linphone_core API. 2012-08-09 13:04:19 +02:00
Ghislain MARY
bad089b4a7 Restore ice-mismatch that was broken during redesign of the interface between media descriptions and ICE. 2012-08-09 09:55:02 +02:00
Ghislain MARY
6eb7105258 Restart ICE if remote credentials have changed. 2012-08-08 16:29:54 +02:00
Ghislain MARY
c6dfd648a9 Restart ICE if requested by ICE itself. 2012-08-08 14:53:27 +02:00
Ghislain MARY
d3851711b1 Defer sending of answer of re-invite when there are some ICE losing candidate pairs. 2012-08-08 13:14:06 +02:00
Ghislain MARY
3611187779 Use ICE selected pairs instead of nominated valid pairs. 2012-08-08 11:43:51 +02:00
Ghislain MARY
dbb1253c6d If ICE processing fails, delete the ICE session. 2012-08-07 16:35:43 +02:00
Ghislain MARY
3bf2dea300 Change of mediastream2 API. 2012-08-07 13:44:18 +02:00
Ghislain MARY
aef56a9c3a Correctly handle content of SDP when ICE has completed for a specific media stream. 2012-08-07 11:45:47 +02:00
Ghislain MARY
7baeffbff4 Use correct contact address in RE-INVITE SIP messages. 2012-08-07 10:53:07 +02:00
Ghislain MARY
2a827ff58a Some fixes of bugs introduced with redesign of interaction between ICE and media descriptions. 2012-08-06 17:08:06 +02:00
Ghislain MARY
5742b453cd Handle conversion between media description and ice session. 2012-08-06 11:41:29 +02:00
Ghislain MARY
6f2853c8a0 Redesign ICE integration to prevent Sal from depending on ICE.
- Move the ICE session from the Sal Op to the LinphoneCall.
 - Do not access directly to the ICE session to generate the SDP from
   the media description or to generate the media description from the
   SDP. Instead include ICE attributes in the media description.
2012-08-06 11:16:16 +02:00
Ghislain MARY
93db3330b6 Prevent crash, video stream may not exist at this time. 2012-08-02 18:03:48 +02:00
Ghislain MARY
fa824200e3 Prevent video stop on ICE reinvite when video connectivity checks are finished. 2012-08-02 15:39:48 +02:00
Ghislain MARY
65c46c6cb8 Defer acceptation of video activation to gather ICE candidates if ICE is enabled. 2012-08-02 12:16:25 +02:00
Ghislain MARY
e5103d7a76 Remove ICE check list from the session when removing video from the communication. 2012-08-01 17:22:37 +02:00
Ghislain MARY
623e9e1813 Remove ICE check lists from media streams that are removed from the SDP. 2012-08-01 15:56:34 +02:00
Ghislain MARY
652471f66f Defer call update when adding video during communication if ICE is activated to wait for ICE candidates gathering to finish. 2012-08-01 15:24:15 +02:00
Ghislain MARY
981accf8bb Do not create an ICE check list if it has already been created. 2012-08-01 15:11:39 +02:00
Ghislain MARY
bb80550705 Delete ICE session, when its state is Failed after receiving an answer from the peer (probably caused by ice-mismatch attributes). 2012-08-01 11:34:51 +02:00
Ghislain MARY
8e50e1c2bd Fix some more crashes related to asynchronous ICE candidates gathering. 2012-08-01 11:32:36 +02:00
Ghislain MARY
922caf698f Fix some crashes related to asynchronous ICE candidates gathering. 2012-08-01 09:52:51 +02:00
Ghislain MARY
950c65ffd9 Defer ringing when ICE is activated to be able to gather local candidates. 2012-08-01 09:29:19 +02:00
Ghislain MARY
6d0083a1f4 Asynchronous ICE candidates gathering. 2012-07-31 12:12:06 +02:00
Ghislain MARY
3c3051a0be Set the state of an ICE check list to Failed if an ice-mismatch attribute is received for it. 2012-07-27 16:02:31 +02:00
Ghislain MARY
72360e58a5 Check for ICE mismatch and add the ice-mismatch attribute in the SDP if there is a mismatch. 2012-07-27 15:33:28 +02:00
Ghislain MARY
682e19e665 Specify default ICE remote candidates. 2012-07-27 12:10:35 +02:00
Ghislain MARY
dc4c620474 Include ice-ufrag and ice-pwd attributes in RE-INVITE. 2012-07-26 12:21:37 +02:00
Ghislain MARY
cec1d35fed Handle the case where ICE is activated locally but the remote does not support it. 2012-07-26 11:28:26 +02:00
Ghislain MARY
df347a9733 Handle case where ICE is activated and the configured STUN server do not reply. 2012-07-26 10:49:12 +02:00
Ghislain MARY
3cca370ef1 Handle received ICE remote-candidates attribute in SDP. 2012-07-26 09:55:32 +02:00
Ghislain MARY
0ec0c0afa1 Add remote-candidates attributes in the SDP in RE-INVITE when ICE process has processed successfully. 2012-07-25 16:41:31 +02:00
Ghislain MARY
a45b6fbd73 Add raddr and rport values in ICE candidate attributes in the SDP. 2012-07-25 15:32:51 +02:00
Ghislain MARY
dc308bc2c6 Only include ICE candidates matching the default destination for each component of the stream in RE-INVITE for Completed check lists. 2012-07-25 12:54:25 +02:00
Ghislain MARY
20c2ba6ff2 ICE API change. 2012-07-25 11:18:05 +02:00
Ghislain MARY
b11704376f Good timing handling for STUN request during ICE candidates gathering. 2012-07-24 16:03:55 +02:00
Ghislain MARY
d3b07fe32d Eliminate ICE redundant candidates. 2012-07-24 15:04:19 +02:00
Ghislain MARY
ebdfca041b Specify remote RTCP address explicitly. 2012-07-23 15:26:18 +02:00
Ghislain MARY
f97f51d4f3 Specify local RTCP port explicitly. 2012-07-23 14:28:19 +02:00
Ghislain MARY
55cb3fa3ed Parse the rtcp attribute in the SDP if present. 2012-07-23 13:37:10 +02:00
Ghislain MARY
3d0f4b369b Add RTCP attribute for each media stream when ICE is activated. 2012-07-23 12:03:17 +02:00
Ghislain MARY
1ed0fa066e Re-Invite when ICE processing is finished successfully. 2012-07-23 10:52:53 +02:00
Ghislain MARY
ba85ea0b32 Fix putting media specific c= line in the SDP. 2012-07-20 17:24:38 +02:00
Ghislain MARY
4a0f37147c Only the Controlling ICE agent sends the re-invite. 2012-07-20 17:23:57 +02:00
Ghislain MARY
5f622db086 Send RE-INVITE when the ICE session processing finishes successfully. 2012-07-20 15:38:57 +02:00
Ghislain MARY
83bc61b27b Callback registering is now useless (use event queues instead). 2012-07-20 14:46:41 +02:00
Ghislain MARY
4c527f6466 The ICE check lists are destroyed automatically when destroying the ICE session. 2012-07-20 12:15:56 +02:00