-
- Downloads
sip: negotiate both UDP and TCP for the control channel
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
Showing
- contrib/src/pjproject/fetch_and_patch.bat 0 additions, 1 deletioncontrib/src/pjproject/fetch_and_patch.bat
- contrib/src/pjproject/rfc6544.patch 891 additions, 346 deletionscontrib/src/pjproject/rfc6544.patch
- contrib/src/pjproject/win32_ice_tcp_temp_fix.patch 0 additions, 38 deletionscontrib/src/pjproject/win32_ice_tcp_temp_fix.patch
- src/ice_socket.h 5 additions, 3 deletionssrc/ice_socket.h
- src/ice_transport.cpp 122 additions, 67 deletionssrc/ice_transport.cpp
- src/ice_transport.h 26 additions, 3 deletionssrc/ice_transport.h
- src/jamidht/jamiaccount.cpp 136 additions, 38 deletionssrc/jamidht/jamiaccount.cpp
- src/jamidht/jamiaccount.h 1 addition, 0 deletionssrc/jamidht/jamiaccount.h
- src/jamidht/sips_transport_ice.cpp 37 additions, 2 deletionssrc/jamidht/sips_transport_ice.cpp
- src/jamidht/sips_transport_ice.h 4 additions, 0 deletionssrc/jamidht/sips_transport_ice.h
- src/peer_connection.cpp 3 additions, 3 deletionssrc/peer_connection.cpp
- src/peer_connection.h 2 additions, 1 deletionsrc/peer_connection.h
- src/security/tls_session.cpp 28 additions, 15 deletionssrc/security/tls_session.cpp
- src/sip/siptransport.cpp 3 additions, 0 deletionssrc/sip/siptransport.cpp
Loading