- 21 Jun, 2019 1 commit
-
-
Adrien Béraud authored
This reverts commit e83a1006. Reason for revert: some major issues remain Change-Id: I6c59880ef9aacb1a0646c4879186b3f269b8541e
-
- 20 Jun, 2019 1 commit
-
-
Sébastien Blin authored
NOTE: SIP over TCP is disabled for now on Windows, waiting for TLS 1.3 support. To re-enable it, check the #ifdef _WIN32 in ice_transport.cpp Our pjsip version supports the RFC6544. With this patch, when starting a call, the daemon is using two ICE sessions for the SIP channel. One is negotiating a UDP socket, and the other a TCP socket and transmits both SDP on the DHT. If both negotiations succeed, TCP is prefered and will be used to transmit SIP messages and the VCard. This should solve the 30 seconds timeout on bad networks. Note that the media channel is still using UDP to transmit audio and video. MAJOR CHANGE: the SIP channel use TLS on top of TCP, no DTLS, so the transport is considered as reliable. Also lot of changes in rfc6544.patch to link to rfc6062. The patch needs to be cleaned, cf TODO notes Also this seems to fix the ICE shutdown at the end of the call (after the IDLE Timeout) Change-Id: I55c5f51377fd8787bc951d6d282eec46f8eaf977 Gitlab: #103 Gitlab: #108
-
- 17 Apr, 2019 1 commit
-
-
Adrien Béraud authored
Change-Id: Id5673ba9f2ec519070cc112685dea5ced94c3b38
-
- 02 Apr, 2019 1 commit
-
-
Adrien Béraud authored
* rename namespace from ring to jami * rename logs methods from RING_* to JAMI_* * rename RING_VIDEO to ENABLE_VIDEO Change-Id: Ic98498652d7059fafe58a96220d565bcdfa53658
-
- 02 Jan, 2019 1 commit
-
-
Sébastien Blin authored
Change-Id: Ia4ed75d04a284efa0763c917aeaa2f08863a87cb
-
- 23 Aug, 2018 1 commit
-
-
Adrien Béraud authored
Change-Id: I1fc4a0a68446911aaee0102d7ddca4c0d5c6980e
-
- 23 Jan, 2018 1 commit
-
-
Guillaume Roguez authored
Change-Id: I1ef88bc640f79790aad2b5285ea2c776aa8cd366
-
- 03 Jan, 2018 1 commit
-
-
Guillaume Roguez authored
Or at least independant of underlaying transport... To make TlsSession able to handle both TLS and DTLS this patch removes the ICE dependency and replace is by the generic network ABC class 'GenericTransport'. As a first step this class is declared in tls_session.h. Side effects of this change are: * refactoring of PMTUD procedure: 'MTU' for gnutls has the meaning on 'payload-for-gnutls' so this information is now drived by the generic transport and not hardcoded anymore. The minimal value of probing remains hardcoded, as is a minimum given by RFC's documentation and it's based on an IPv4 packet associated with UDP protocol. * getMtu() is now maxPayload() and represent correctly what the application must have. * TlsSession implements itself GenericTransport: we can chain GenericTransport instances to construct an overlayed transport protocol. * TlsSession is now considered as non thread-safe for its public API. Caller must bring itself this property. This permit to remove a redundant mutex in send() operation. Note: and it's the case in the only user (SipsIceTransport), that why the mutex is redundant in 100% of cases. Notice the benefit of this genericity refactoring let us write a unit-test for this TlsSession class without having an heavy ICE transport to mock-up. Also ICE transport gained of this by adding a new IceSocketTransport to replace IceSocket in a near future (need async IO in GenericSocket, but not required for the moment). Change-Id: I6f4591ed6c76fa9cb5519c6e9296f8fc3a6798aa Reviewed-by:
Olivier Soldano <olivier.soldano@savoirfairelinux.com>
-
- 15 Feb, 2017 1 commit
-
-
Olivier SOLDANO authored
This implementation uses gnutls dtls heartbeat API to test path MTU. heartbeat allowing messages with automated response in a datagram, the application is able to guess the MTU via a timeout in the heartbeat. (timeout on packet sent and no response, implies that the MTU is lower than the lost payload.) To minimize false positives (a response is lost for example), each attempt triggers one retry on the first timeout. This version ensures a minimal MTU of 512 bytes will be returned in case of any failure in the procedure. For retrocompatibility with non heartbeat capable clients, a fallback MTU is set at 1280. Change-Id: Ib9a7f63a70e8bdad239d8fc103779a0f2c387e87 Reviewed-by:
Andreas Traczyk <andreas.traczyk@savoirfairelinux.com>
-
- 05 Jan, 2017 1 commit
-
-
Guillaume Roguez authored
Change-Id: I6dbc51dd41c1f44d1446fe7365026af037bc86d9 Reviewed-by:
Stepan Salenikovich <stepan.salenikovich@savoirfairelinux.com>
-
- 02 Dec, 2016 1 commit
-
-
Guillaume Roguez authored
SipsIceTransport doesn't set internal PJSIP transport correctly causing many troubles in how our ICE/DTLS underlaying transport works with PJSIP. This patch: * adds a custom dtls PJSIP transport type * implement correctly custom PJSIP transport creation * revert unneeded patches about IM fixes (da0a2d17 and 0cf16b30) as this patch fixes also the 30s issue Side-effect: this fixes the 'call failed' effect when peer hangs-up Change-Id: If88b8245d6c9ff76bc2f2456f06ff65bc5e723b1
-
- 16 Jun, 2016 1 commit
-
-
Guillaume Roguez authored
async_send() method was needed for SipsTransport class. But it's a dedicated behavior of PJSIP. To have a clean generic TlsSession class, this method was removed and a new synchronous send() method replace it. SipsTransport has been modified to implement the asynchronous send behavior requested by PJSIP. Change-Id: I3a68e36a33beab30cad19967d39f20598589ec30 Tuleap: #660
-
- 01 Mar, 2016 1 commit
-
-
Guillaume Roguez authored
send ack message was queued in a queue unstacked in the main thread, but this last is busy by application waiting for the ack... deadloop! This patch fixes this by calling the application ack confirmation callback immediatly when the TLS acknowledge the ack. Change-Id: Ic8fe6102acca184d78f86e3e8524382e9b257f4b Tuleap: #433
-
- 15 Feb, 2016 1 commit
-
-
Guillaume Roguez authored
TLS session (class handling gnutls session client/server) has to be extracted from SipsIceTransport class. This last is PJSIP transport related, but we need TLS session to securise other kind of network socket. This extract has moslty re-written all previous classes has the global working model has change. This also introduces: - flood protection in server SYN cookie state - better FSM model in TLS session - network statistics recording - simplify SipsIceTransport design - ICE fixes to not block in waitForData() if ICE is stopped - integrate Diffie-Hellman params generation from RingAccount Change-Id: I32cf1f0c82dee548912d9efdaca5a4447ab05ec7 Tuleap: #106
-
- 03 Nov, 2015 1 commit
-
-
Guillaume Roguez authored
This patch fixes a memory leak in SipsIceTransport class. gnutls_priority_init() allocates memory, no gnutls_priority_deinit() is called to free it. This last has been added in SipsIceTransport destructor. This patch also fixes code rules error on priority_cache_ naming (this is the variable initialized by gnutls_priority_init). Change-Id: I32a8a7347d4af96886a0def2d9a6d77fe0fad7c7 Tuleap: #92
-
- 21 Sep, 2015 1 commit
-
-
Guillaume Roguez authored
- remove OpenSSL exception - fix Savoir-faire Linux naming - fix common Author: representation Issue: #80663 Change-Id: I6c3b2ca1ed48ed474a0ecd5a30fe793526e11b00
-
- 25 Jun, 2015 1 commit
-
-
Adrien Béraud authored
In version 3.3, gnutls removed the need to call gnutls_global_init and gnutls_global_deinit. This allows to cleanup our gnutls init code. http://www.gnutls.org/manual/html_node/Upgrading-from-previous-versions.html Refs #76228 Change-Id: I0e35f1bbbf8d1f4515a423f834f91e03fdbae6c8
-
- 13 Jun, 2015 1 commit
-
-
Guillaume Roguez authored
This patch moves SIP transport send request reply callback calls from internal thread loop to the MainLoop where SIP transport has been created. This prevents PJSIP crashes when some locks are deleted by not owning thread. This patch fixes also non-replied send request when they falls into timeout. Refs #75193 Change-Id: Ia457d856962dce0d661de95bed651843119f0e24
-
- 11 Jun, 2015 1 commit
-
-
Guillaume Roguez authored
This patch fixes a bug introduced by commit 74622d16. Refs #75193 Change-Id: I6c0445737ef397673b2967825e91f071aa5f955d
-
- 10 Jun, 2015 1 commit
-
-
Guillaume Roguez authored
This fix thread mutex owning issues. Refs #75193 Change-Id: I95dbf6646dab05a73e43243dba5aa54baeee98fe
-
- 22 Apr, 2015 1 commit
-
-
Adrien Béraud authored
Refs #71318 Change-Id: I18d7ee981cf9ec877d83f53a105336e71750aa93
-
- 27 Mar, 2015 2 commits
-
-
Adrien Béraud authored
Refs #69371 Change-Id: I5f18ffa02c58a07a71f6260f3de360c9b1f75905
-
Adrien Béraud authored
Refs #69371 Change-Id: Ife39e493848f1326234d25f657b49734e8ce0b1d
-
- 24 Mar, 2015 1 commit
-
-
Adrien Béraud authored
Refs #69122 Change-Id: I346c480728233d3e15c681b78febbac9bcf96b97
-
- 20 Mar, 2015 1 commit
-
-
Guillaume Roguez authored
Refs #68986 Change-Id: Ia95b140e4f4d6625d1df12d52a40414482b2e773
-
- 09 Mar, 2015 3 commits
-
-
Guillaume Roguez authored
- rename SipsIceTransport::reset into SipsIceTransport::shutdown - replace pj_bzero by std::memset - fix coding rules violation - inclusion fixes - deadcode removal Refs #67228 Change-Id: Ifb9e37b0520c6b48fb43b2c05483429b1207bfbc
-
Guillaume Roguez authored
Refs #67228 Change-Id: Ic15d0616a6597cc335705f2ab241d63bd6139f1d
-
Guillaume Roguez authored
Refs #67228 Change-Id: I925227210178e86cb4c2409a80046c68155f72b6
-
- 27 Feb, 2015 1 commit
-
-
Adrien Béraud authored
Refs #67201 Change-Id: I87344b851ee34feb3f75aa66866b79943a2e60c8
-
- 26 Feb, 2015 2 commits
-
-
Adrien Béraud authored
This reverts commit 340abc0a. Change-Id: I3fea0887e2de68b0c059b1b339e0409e687956f3
-
Adrien Béraud authored
Refs #66534 Change-Id: I3c1f9d74ae7669d996b4a8d74ba2413b3aa71588
-
- 23 Feb, 2015 3 commits
-
-
Adrien Béraud authored
Refs #66173 Change-Id: Ifb9686083cd2aef8a5cc91b2040ff59d363b9456
-
Adrien Béraud authored
Refs #66173 Change-Id: I9c98257a8146b79692463f933490f4efffd54855
-
Adrien Béraud authored
Refs #66173 Change-Id: Icdaccc782d7e70b490051832f016b434e391fe26 Signed-off-by:
Guillaume Roguez <guillaume.roguez@savoirfairelinux.com>
-