summaryrefslogtreecommitdiff
path: root/agent/inputstream.c
Commit message (Collapse)AuthorAgeFilesLines
* iostream: Implement close() for ICE-TCP alsoOle André Vadla Ravnås2021-11-221-6/+4
|
* Use per-agent locks and GWeakRefs in callbacks from timeout sourcesJuan Navarro2018-10-281-4/+4
| | | | | | | | | | | | | | | | | | | | | Work on libnice's bug #1 in Gitlab. This work is composed of multiple merged parts: - "Global lock contention removed" Phabricator D1900: https://phabricator.freedesktop.org/D1900 By @nifigase Opened in GitLab as Merge Request !12 - "agent: properly handle NiceAgent ref in callbacks from timeout sources" Phabricator D1898: https://phabricator.freedesktop.org/D1898 By @mparis This patch was itself based upon a previous version of the work done in D1900. After the switch of hosting, it got lost. On top of these, additions to follow some review comments from @ocrete: - https://phabricator.freedesktop.org/D1900#40412 - https://phabricator.freedesktop.org/D1898#39332
* agent: Correctly namespace Component and its methodsPhilip Withnall2015-10-011-3/+3
| | | | | | | | 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
* agent: Correctly namespace Stream and its methodsPhilip Withnall2015-10-011-2/+2
| | | | | | | | 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
* agent: Add missing stream-closed checks for pseudo-TCPPhilip Withnall2014-08-231-3/+3
| | | | | | | | | This got lost in rebasing the FIN–ACK work. component->tcp is now only NULL before the pseudo-TCP stream is initially created — afterwards, it is always non-NULL, but pseudo_tcp_stream_is_closed() returns TRUE if the stream has closed (gracefully or on errors). This allows differentiation between the states: TCP support was never initialised; and TCP support was initialised but is now closed.
* agent: Return 0 on EOS from nice_input_stream_read()Philip Withnall2014-08-231-6/+2
| | | | | We should return 0 instead of G_IO_ERROR_CLOSED for consistency with recv() and read().
* agent: Close pseudo-TCP streams when closing G[IO|Input|Output]StreamsPhilip Withnall2014-08-211-2/+40
| | | | | | This means that users of the Nice[Input|Output|IO]Stream API can easily close TCP connections without having to hack around with libnice internals.
* Rename variables that shadow global definitionsOlivier Crête2014-03-311-2/+2
|
* iostream: De-gtkdoc the comments, as it's not public APIOlivier Crête2014-03-061-5/+5
|
* iostream: iostreams are only for reliable streams, no need to checkOlivier Crête2014-02-201-1/+1
|
* inputstream: Make the GSource hold a weak ref on the agentOlivier Crête2014-01-311-18/+16
| | | | | This also means that it can't have the component ref. Also make the cancellable a child source of this GPollableInputStream one
* agent: Add GPollableInputStream support to NiceInputStreamPhilip Withnall2014-01-311-3/+153
|
* agent: Add support for GIO-style I/O streamsPhilip Withnall2014-01-311-0/+314
This adds three new classes: • NiceIOStream • NiceInputStream • NiceOutputStream which allow wrapping a single stream/component pair in an I/O stream which can be used with the standard GIO functions. The streams are constructed as wrappers around a NiceAgent, with changes to the NiceAgent’s properties affecting all instantiated streams. Streams are only supported for reliable connections. If the NiceAgent stream which underlies a NiceInputStream, NiceOutputStream or NiceIOStream is removed, the I/O stream is marked as closed. This is based on work originally done by Youness Alaoui <youness.alaoui@collabora.co.uk>.