summaryrefslogtreecommitdiff
path: root/docs
Commit message (Collapse)AuthorAgeFilesLines
* address: Add introspection-friendly to_string_dupJames Westman2023-01-061-0/+1
| | | | | | nice_address_to_string expects an already-allocated string, which is not great for introspection. Adds nice_address_to_string_dup, which does the same thing, but returns a newly allocated string.
* interfaces: Add API to find the interface index from a local addressOlivier Crête2022-07-251-0/+1
| | | | | | | This will find some interface that has the address and will not work correctly if multiple interfaces have the same address. But in any case, nothing in libnice expects that and we would need to break the API to make that work.
* version: Add NICE_CHECK_VERSION to the documentationOlivier Crête2022-05-262-1/+2
|
* address: Add Boxed TypeOlivier Crête2022-05-261-0/+3
| | | | This should make the library more easily usable for bindings
* candidate: Add utility function to get STUN server addressPhilippe Normand2022-05-091-0/+1
| | | | Can be useful to know which STUN server was used to discover the given candidate.
* docs: Add index for symbols added in 0.1.20Philippe Normand2022-05-051-0/+4
|
* candidate: Add utility function to get TURN relay addressPhilippe Normand2022-05-031-0/+1
| | | | Can be useful to know which TURN server is being used as relay server for a given candidate.
* Don't try to use link-local addresses outside local networkJohan Sternerup2022-04-061-0/+1
| | | | | | | | | | If we have gathered a host IP-address that is link-local we should never try to use it for anything else than trying to match it with another link-local address. Some routers seem to have problems with traffic from link-local addresses destined at external IP-addresses. By definition link-local addresses should stay local so there's no reason to access STUN/TURN from it or try to form a candidate with another address that is not link-local.
* nice: Bring new symbols to 0.1.19Olivier Crête2021-08-191-3/+0
| | | | It's not released yet and we don't do even/odd in this project.
* nice: Export nice_candidate_transport_to_stringOlivier Crête2021-08-191-4/+0
| | | | Also update the Since to 0.1.19, because it's not really usable now
* nice: Export nice_candidate_type_to_stringOlivier Crête2021-08-191-0/+3
| | | | Also update the Since to 0.1.19, because it's not really usable now
* Use a namespace http://www.w3.org/2001/XInclude instead of a deprecated oneLemures Lemniscati2021-01-061-1/+1
| | | | Avoid to use a deprecated namespace http://www.w3.org/2003/XInclude
* Use https instead of http in libnice-docs.xmlLemures Lemniscati2021-01-061-1/+1
|
* agent: implement support for RFC7675 - Consent FreshnessMatthew Waters2020-12-102-0/+5
| | | | | | | | | | | | | | | Specified in https://tools.ietf.org/html/rfc7675 RFC 7675 is a slight modification of the existing keepalive connection checks that could be enabled manually or were used with the GOOGLE compatibility mode. Slight differences from the existing keepalive connection checks include: - an additional consent expiry timer instead of relying on all binding requests to succeed. - 403: 'Forbidden' stun error-code which revokes consent with immediate effect.
* candidate: Hide the internal implementation from APIOlivier Crête2020-08-202-1/+2
| | | | This is slightly an API break, but it should never have been public.
* meson: Remove duplicated entryOlivier Crête2020-08-181-1/+0
|
* candidate: Make debug string functions publicOlivier Crête2020-07-212-0/+6
| | | | | Adds new public APIs, nice_candidate_type_to_string() and nice_candidate_transport_to_string().
* Remove autotools buildTim-Philipp Müller2020-05-223-123/+0
| | | | | | Remove dist check on the CI, since it doesn't really add anything in the Meson case (tarball is based on files checked into git and srcdir != builddir).
* meson: Actually make meson generate the compat MakefileOlivier Crête2020-05-221-1/+2
| | | | The previous patch didn't get triggered
* meson: Make gtkdoc-check work with older gtk-docOlivier Crête2020-05-221-1/+14
| | | | | Older gtkdoc versions expect to find a Makefile, so generate a fake one with the information it wants.
* meson: Run gtkdoc-checkOlivier Crête2020-05-221-2/+3
|
* discovery: add a unique local preference value per turn serverFabrice Bellet2020-05-041-0/+2
| | | | | | | | | | This value is built from the position in the component turn servers list, and from the base address network interface position in the list of network interfaces. This value is used to ensure a unique candidate priority for each one. Also ensure that the fields that compose the local preference don't overlap, by checking their maximum value. See RFC-8445, section 5.1.2.2 "Guidelines for Choosing Type and Local Preferences".
* Fix building doc when libnice is a subprojectXavier Claessens2019-12-171-1/+1
| | | | | | | When passing strings to 'src_dir', they are assumed to be relative to the root source dir of main project. That's possibly a Meson bug, it should be relative to current source dir. In any case, it's better to use include_directories() to avoid any confusion.
* agent: add nice_agent_get_sockets APIOlivier Crête2019-07-022-0/+5
| | | | | | | This API makes it possible to get an array of all of the sockets used by a specific component, this is useful to set options on the socket. Also bump GLib requirement to 2.54, which is the version in RHEL 7
* agent: add nice_agent_close_async() APIJakub Adam2019-05-091-0/+1
| | | | | Asynchronously closes resources the agent has allocated on remote servers.
* agent: trickle ICE modeJakub Adam2019-03-082-0/+5
| | | | | | | | | In this mode, activated by setting "ice-trickle" property of a NiceAgent to TRUE, a component without a successful connectivity check will wait indefinitely for more remote candidates to come. nice_agent_peer_candidate_gathering_done() must be called after receiving the last remote candidate for the component to finally change its state to NICE_COMPONENT_STATE_FAILED.
* Makefiles: Add meson.build files to tarballOlivier Crête2018-12-271-0/+2
|
* docs: Add _get_type() symbols to hidden sectionOlivier Crête2018-12-271-0/+14
|
* Add support for Meson build systemTim-Philipp Müller2018-12-141-0/+61
|
* docs: Add missing symbols to various sectionsOlivier Crête2018-06-191-0/+18
|
* conncheck: implement ice regular nomination methodFabrice Bellet2017-06-121-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | This patch implements Regular Nomation as described in RFC5245 8.1.1.1. The controlling agent lets valid pairs accumulate, and decides which pair to recheck with the use-candidate attribute set. priv_mark_pair_nominated() follows 7.2.1.5, to update the nominated pair when acting as a STUN server, and priv_map_reply_to_conn_check_request() implements 7.1.3.2.4 to update the nominated pair when acting as a STUN client. A new property is also added to the agent to control the nomination mode, which can be regular of aggressive, with default value set to aggressive. Two new flags are introduced in the CandidateCheckPair structure: - use_candidate_on_next_check indicates the STUN client to add the use-candidate attribute when the pair will be checked. At this time, the nominated flag has not been set on this pair yet. - mark_nominated_on_response_arrival indicates the STUN server to nominate the pair when its succesfull response to a previous triggered check will arrive (7.2.1.5, item #2) Differential Revision: https://phabricator.freedesktop.org/D811
* candidate: Add equality check functionOlivier Crête2017-04-112-0/+5
| | | | | | | | | Add a function that can check if two candidates point to the same place. https://phabricator.freedesktop.org/T104 Reviewed-by: Philip Withnall <philip.withnall@collabora.co.uk> Differential Revision: https://phabricator.freedesktop.org/D1715
* Version 0.1.140.1.14Olivier Crête2017-04-031-0/+4
|
* doc: Improve gtkdoc-check environmentOlivier Crête2017-03-311-1/+3
|
* doc: Add missing symbolOlivier Crête2017-03-311-0/+1
|
* tests: Remove g_type_init() callsPhilip Withnall2015-10-011-1/+0
| | | | | | | | 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
* agent: Add assertions to check component state transitions are validPhilip Withnall2015-09-033-2/+33
| | | | | | | | 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
* agent: Add API to set local credentialsRohan Garg2015-04-141-0/+1
| | | | Adds new API: nice_agent_set_local_credentials().
* docs: Enable documentation checks during `make check` by defaultPhilip Withnall2015-01-021-3/+4
| | | | Now that they pass, we should endeavour to ensure they continue to pass.
* docs: Add 0.1.8 API to the documentation indexPhilip Withnall2015-01-021-0/+4
| | | | This should have been included before. This fixes `make check` in docs/.
* docs: Add various missing documentation comments and update sections.txtPhilip Withnall2015-01-021-0/+8
| | | | | This straightens out the last few bits of the documentation and almost allows `make check` to pass in docs/.
* docs: Inform gtk-doc of the libnice namespacePhilip Withnall2015-01-021-1/+1
| | | | This allows it to order the index a little better.
* docs: Switch from gtk-doc SGML mode to XML modePhilip Withnall2015-01-022-2/+2
| | | | | We already used XML everywhere; just formally switch to XML mode and eliminate the last few traces of SGML.
* docs: Ignore some undocumentable/non-public APIPhilip Withnall2014-08-211-1/+2
|
* pseudotcp: Add pseudo_tcp_socket_shutdown() supportPhilip Withnall2014-08-211-0/+2
| | | | | This is analogous to the UNIX shutdown() function, allowing either or both sides of a pseudo-TCP connection to be shut down.
* pseudotcp: Add optional FIN–ACK and RST supportPhilip Withnall2014-08-211-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In order to detect cases where the peer closes its connection without an explicit in-band close message (e.g. in protocols such as Telnet where there is none), pseudo-TCP needs to grow support for a shutdown handshake, following the TCP FIN–ACK specification. Arguably it should have had this all along, but Jingle apparently doesn’t need it. This adds support for FIN–ACK to the pseudo-TCP implementation. It is backwards-compatible, only being used if the TCP_OPT_FIN_ACK option is specified in the SYN segment. If enabled, full-duplex closes are supported, and the standard method for notifying a peer of the other end closing its connection (returning 0 from recv()) is used. Also allow rapidly tearing down a connection, discarding unsent and unreceived data, by sending an RST segment. This preserves the ability to do a forced socket closure with pseudo_tcp_socket_close(sock, TRUE). It also permits graceful socket shutdown in the case where the final ACK is lost, and one peer gets stuck in the LAST-ACK state: that peer will eventually re-transmit its FIN segment. The other peer, in the CLOSED state, will respond with a RST segment, and the first peer will then reach CLOSED. References (most useful first): • http://tools.ietf.org/html/rfc793#section-3.5 • http://tools.ietf.org/html/rfc1122#page-87 • http://vincent.bernat.im/en/blog/2014-tcp-time-wait-state-linux.html • http://tools.ietf.org/html/rfc675 Diagram: • http://en.wikipedia.org/wiki/Transmission_Control_Protocol#mediaviewer/File:TCP_CLOSE.svg
* pseudotcp: Allow the ‘current’ time to be setPhilip Withnall2014-08-211-0/+1
| | | | | | | | | | This is needed for the upcoming new test suite for pseudo-TCP. It shouldn’t be used in normal code — only in tests. Ideally, the pseudo-TCP code should originally never have called g_get_monotonic_time() itself, and should have always taken a time parameter from the caller; then it would be more testable. Unfortunately, API guarantees prevent this from being changed now.
* pseudotcp: Add pseudo_tcp_socket_is_closed()Philip Withnall2014-08-211-0/+1
| | | | New convenience API to check if the socket is in state TCP_CLOSED.
* docs: Remove some private symbols from the documentation sections filePhilip Withnall2014-07-071-5/+0
|
* address: add nice_address_equal_no_port() to compare addresses ignoring portsOlivier Crête2014-05-171-0/+1
|