- 01 Mar, 2016 7 commits
-
-
Philip Withnall authored
The test didn't let enough time for ragent to reach the completed state after obtaining its remote candidates and switching to connecting state. Reviewed-by:
Olivier Crête <olivier.crete@collabora.com> Differential Revision: https://phabricator.freedesktop.org/D817
-
Philip Withnall authored
The update of pairs priorities due to agent role change requires the conncheck list to be reordered to reflect this modification. Reviewed-by:
Olivier Crête <olivier.crete@collabora.com> Differential Revision: https://phabricator.freedesktop.org/D806
-
Philip Withnall authored
With this patch, we send keepalive binding requests using agent compatibility flags, instead of RFC 3489 classic stun. The peer stun agent will known how to handle it, and won't be confused by the uncompatible RFC 3489 message, causing "no cookie" errors in the debug log. Reviewed-by:
Olivier Crête <olivier.crete@collabora.com> Differential Revision: https://phabricator.freedesktop.org/D804
-
Philip Withnall authored
This patch fixes a bug where the foundation definition shouldn't take into account the stream the pair belongs to. This is important, because the ordinary checks algorithm will change pair state from Frozen to Waiting, by selecting pairs from other streams sharing the same foundation than already succeeded pairs. Reviewed-by:
Olivier Crête <olivier.crete@collabora.com> Differential Revision: https://phabricator.freedesktop.org/D815
-
Philip Withnall authored
The local preference depends on the rank of the IP address in the list of all IP addresses available of the box running the test. As this value is not fixed we ignore it in the test. Reviewed-by:
Olivier Crête <olivier.crete@collabora.com> Differential Revision: https://phabricator.freedesktop.org/D818
-
Philip Withnall authored
This patch fixes a bug in priv_mark_pair_nominated(), where the local candidate was not passed to the function, so removing the possibility to find which local candidate the check was sent to. Reviewed-by:
Philip Withnall <philip@tecnocode.co.uk> Differential Revision: https://phabricator.freedesktop.org/D808
-
Philip Withnall authored
Add a more debug details, specifically in some places, it is interesting to have the src and dst IP addresses of the pairs being checked, and also to make the difference between log related to different stream ids. Reviewed-by:
Philip Withnall <philip@tecnocode.co.uk> Differential Revision: https://phabricator.freedesktop.org/D803
-
- 18 Jan, 2016 1 commit
-
-
Mike Ruprecht authored
If the first call to nice_agent_gather_candidates() partially succeeds (setting a UPnP agent and timeout), then fails before starting gathering, a second call to nice_agent_gather_candidates() would fail to set a new UPnP timeout because the UPnP initialisation block would be skipped. That means gathering would never succeed due to timing out on UPnP. Fix that by setting the UPnP timeout whenever a new pending UPnP mapping is added. https://phabricator.freedesktop.org/T3534Reviewed-by:
Philip Withnall <philip.withnall@collabora.co.uk>
-
- 03 Dec, 2015 1 commit
-
-
Jose Antonio Santos Cadenas authored
As udp-bsd.ccode is using G_IO_ERROR_CONNECTION_CLOSED glib 2.44 is required. Change-Id: I1bb63f2484c513c58eeec312ba0835164604c40c Reviewed-by:
Philip Withnall <philip@tecnocode.co.uk> https://phabricator.freedesktop.org/T3492
-
- 21 Oct, 2015 1 commit
-
-
Philip Withnall authored
This fixes a compiler warning and prevents a possible truncation. Reviewed-by:
Olivier Crête <olivier.crete@collabora.com> Differential Revision: https://phabricator.freedesktop.org/D345
-
- 18 Oct, 2015 1 commit
-
-
Philip Withnall authored
Now that we’re using automake’s parallel test harness, it automatically redirects all the debug log spew away from the console, so we should always have it enabled. Reviewed-by:
Olivier Crête <olivier.crete@collabora.com> Differential Revision: https://phabricator.freedesktop.org/D292
-
- 01 Oct, 2015 11 commits
-
-
Philip Withnall authored
This fixes `arc diff` to select the right repository when submitting patches.
-
Philip Withnall authored
Remove all references to the old, unnamespaced versions. This should cause no functional changes. Reviewed-by:
Olivier Crête <olivier.crete@collabora.com> Differential Revision: https://phabricator.freedesktop.org/D309
-
Philip Withnall authored
Remove all references to the old, unnamespaced versions. This should cause no functional changes. Reviewed-by:
Olivier Crête <olivier.crete@collabora.com> Differential Revision: https://phabricator.freedesktop.org/D308
-
Philip Withnall authored
This makes it reference-counted. This will be useful for allowing GDatagramBased and GIOStream objects to hold references to the stream and component they are interested in, allowing removal of the global NiceAgent lock previously needed to look up the component for every I/O operation. Deprecate all the old methods until it’s properly namespaced. Reviewed-by:
Olivier Crête <olivier.crete@collabora.com> Differential Revision: https://phabricator.freedesktop.org/D307
-
Philip Withnall authored
This makes it reference-counted. This will be useful for allowing GDatagramBased and GIOStream objects to hold references to the stream and component they are interested in, allowing removal of the global NiceAgent lock previously needed to look up the component for every I/O operation. It also means that nice_stream_close() could eventually become asynchronous, which would fix a few race conditions. Reviewed-by:
Olivier Crête <olivier.crete@collabora.com> Differential Revision: https://phabricator.freedesktop.org/D306
-
Philip Withnall authored
This is a follow up to T3324, to update the test case to match the new values generated. Bug: https://phabricator.freedesktop.org/T3324Reviewed-by:
Olivier Crête <olivier.crete@collabora.com> Differential Revision: https://phabricator.freedesktop.org/D301
-
Philip Withnall authored
Now we can actually see the priority numbers which are unequal. Reviewed-by:
Olivier Crête <olivier.crete@collabora.com> Differential Revision: https://phabricator.freedesktop.org/D300
-
Philip Withnall authored
This avoids an assertion failure in nice_address_to_string() when the addresses are compared for priority. Reviewed-by:
Olivier Crête <olivier.crete@collabora.com> Differential Revision: https://phabricator.freedesktop.org/D299
-
Philip Withnall authored
We depend on GLib 2.36.0, which is a higher version than any of these version checks cared about, so they were all trivially true or false. Reviewed-by:
Olivier Crête <olivier.crete@collabora.com> Differential Revision: https://phabricator.freedesktop.org/D298
-
Philip Withnall authored
We depend on GLib 2.36.0; g_thread_init() has been deprecated since 2.32.0, when thread initialisation was changed to happen automatically. Reviewed-by:
Olivier Crête <olivier.crete@collabora.com> Differential Revision: https://phabricator.freedesktop.org/D297
-
Philip Withnall authored
We depend on GLib 2.36.0, which deprecated g_type_init() since GType initialisation is now done automatically. Reviewed-by:
Olivier Crête <olivier.crete@collabora.com> Differential Revision: https://phabricator.freedesktop.org/D296
-
- 11 Sep, 2015 4 commits
-
-
Jakub Adam authored
Renamed the function to priv_process_response_check_for_reflexive() because it now checks also for server reflexive candidates. Updated the documentation to indicate that the function never returns NULL. Maniphest Tasks: https://phabricator.freedesktop.org/T115 Differential Revision: https://phabricator.freedesktop.org/D243Reviewed-by:
Philip Withnall <philip.withnall@collabora.co.uk>
-
Jakub Adam authored
In priv_process_response_check_for_peer_reflexive(), mere presence of a candidate in local_candidates doesn't mean there's also some candidate pair in conncheck_list using it - for instance that candidate may be server reflexive, for which no check pairs are initially created (see conn_check_add_for_candidate_pair()). If we fail to find corresponding pair upon receiving such candidate's IP in a conncheck response's XOR-MAPPED-ADDRESS attribute, we shall add a new one in a similar way we would add a new pair for a just discovered peer reflexive candidate. Previous priv_process_response_check_for_peer_reflexive() implementation would return NULL, causing a CandidateCheckPair with local candidate of type HOST to be wrongly selected even though the local host IP might not be directly accessible by the remote counterpart (e.g. it's an address on a private network segment). In practice this was coming through as a duplex connection that libnice was reporting as properly established, but only one direction of the communication was actually working. Maniphest Tasks: https://phabricator.freedesktop.org/T115 Differential Revision: https://phabricator.freedesktop.org/D242Reviewed-by:
Philip Withnall <philip.withnall@collabora.co.uk>
-
Jakub Adam authored
The argument passed into the callback is always a base (TCP/UDP) socket, which can't be directly compared with local candidate's sockptr (may be TURN, http, or other socket wrapping another one). We're in fact interested whether sock is a base socket of sockptr. Maniphest Tasks: T114 Reviewed-by:
Philip Withnall <philip.withnall@collabora.co.uk> Differential Revision: https://phabricator.freedesktop.org/D241
-
Jakub Adam authored
This will be used in the next commit. Maniphest Tasks: T114 Reviewed-by:
Philip Withnall <philip.withnall@collabora.co.uk> Differential Revision: https://phabricator.freedesktop.org/D240
-
- 04 Sep, 2015 2 commits
-
-
Philip Withnall authored
This is needed for G_IO_ERROR_BROKEN_PIPE, which is used in the I/O stream code. Reported by Emanuele Bizzarri <emabiz76@gmail.com> on the mailing list.
-
Philip Withnall authored
To match debug_enable in agent/debug.c. Debug can still be enabled by calling stun_debug_enable() or nice_debug_enable(). Spotted on the mailing list by Tom Chen.
-
- 03 Sep, 2015 1 commit
-
-
Philip Withnall authored
There is no point in the NiceComponents having a state machine if the state transition graph is not documented or enforced. Document and enforce it. http://phabricator.freedesktop.org/T120
-
- 02 Sep, 2015 7 commits
-
-
Philip Withnall authored
Summary: Offering multiple host candidates with equal priorities could lead to unpredictable candidate pair selection by our counterparty. Fixes call disconnection by MS Lync client after 30 seconds while VPN (2nd IP) was active on libnice host. Maniphest Tasks: T3324 Reviewers: pwithnall Projects: #libnice Reviewed By: pwithnall Subscribers: pwithnall Differential Revision: https://phabricator.freedesktop.org/D234
-
Jakub Adam authored
Maniphest Tasks: T3324 Reviewers: pwithnall Projects: #libnice Reviewed By: pwithnall Differential Revision: https://phabricator.freedesktop.org/D239
-
Jakub Adam authored
Summary: Fixes "(nice_address_to_string): should not be reached" errors when calling nice_candidate_ms_ice_priority() because of invalid NiceAddress. Maniphest Tasks: T3324 Reviewers: pwithnall Projects: #libnice Reviewed By: pwithnall Subscribers: pwithnall Differential Revision: https://phabricator.freedesktop.org/D238
-
Jakub Adam authored
Summary: Offering multiple host candidates with equal priorities could lead to unpredictable candidate pair selection by our counterparty. Fixes call disconnection by MS Lync client after 30 seconds while VPN (2nd IP) was active on libnice host. Maniphest Tasks: T3324 Reviewers: pwithnall Projects: #libnice Reviewed By: pwithnall Subscribers: pwithnall Differential Revision: https://phabricator.freedesktop.org/D234
-
Jakub Adam authored
Summary: So that we can take the base address into account in the calculation. Maniphest Tasks: T3324 Reviewers: pwithnall Projects: #libnice Reviewed By: pwithnall Subscribers: pwithnall Differential Revision: https://phabricator.freedesktop.org/D235
-
Philip Withnall authored
Maniphest Tasks: T126 Reviewers: pwithnall Projects: #libnice Reviewed By: pwithnall Subscribers: pwithnall Differential Revision: https://phabricator.freedesktop.org/D223
-
Jakub Adam authored
As per [MS-TURN] Section 2.2.1, TURN message type 0x0104 "Send request response" isn't supported and the TURN server MUST NOT send them. Thus, libnice should not remember Send requests in agent->sent_ids because without replies coming, the number of allowed pending transaction gets quickly exhausted, causing our data packets to be dropped until a request timeout frees some space in the queue. This behavior resulted in choppy reception of our audio on a Lync client when connected via Lync Edge (TURN) Server. Maniphest Tasks: T126 Reviewers: pwithnall Projects: #libnice Reviewed By: pwithnall Subscribers: pwithnall Differential Revision: https://phabricator.freedesktop.org/D223
-
- 29 Aug, 2015 4 commits
-
-
Philip Withnall authored
Summary: Disable Nagling for underlying TCP sockets used by libnice, because they are typically used for streaming applications, or for pseudo-TCP; the bandwidth in both cases is harmed by Nagling. Based on a patch by Vadim Genkin. Maniphest Tasks: T3317 Reviewers: vadimgenkin, pwithnall Projects: #libnice Reviewed By: pwithnall Subscribers: pwithnall, vadimgenkin Differential Revision: https://phabricator.freedesktop.org/D230
-
Philip Withnall authored
Disable Nagling for underlying TCP sockets used by libnice, because they are typically used for streaming applications, or for pseudo-TCP; the bandwidth in both cases is harmed by Nagling. Based on a patch by Vadim Genkin. Maniphest Tasks: T3317 Reviewers: pwithnall Projects: #libnice Subscribers: pwithnall, vadimgenkin Differential Revision: https://phabricator.freedesktop.org/D230
-
Philip Withnall authored
Summary: The patch fixes the issue where agent reference count is not properly decremented causing instance leak in cases where component's socket is reset remotely. Reviewers: #libnice, pwithnall Projects: #libnice Reviewed By: #libnice, pwithnall Subscribers: pwithnall, maximgolunov Differential Revision: https://phabricator.freedesktop.org/D236
-
Philip Withnall authored
Summary: The patch fixes the issue where agent reference count is not properly decremented causing instance leak in cases where component's socket is reset remotely. Reviewers: #libnice, pwithnall Projects: #libnice Reviewed By: #libnice, pwithnall Subscribers: pwithnall, maximgolunov Differential Revision: https://phabricator.freedesktop.org/D236
-