|
reSIProcate
SIP stack, Dialog Usage Manager and related libraries
|
#include <TurnAsyncTlsSocket.hxx>
Additional Inherited Members | |
Public Types inherited from reTurn::AsyncSocketBase | |
| using | BeforeClosedHandler = std::function< void(unsigned int)> |
Static Public Member Functions inherited from reTurn::AsyncTlsSocketBase | |
| static bool | setupClientSsl (SSL *ssl, const std::string &hostname, bool validateHostname) |
| Sets up a client SSL to connect to hostname (a host name or IP address): SNI for a host name, and - when validateHostname - has OpenSSL check during the handshake that the server certificate is for hostname, so the handshake fails if it isn't. | |
| static void | logClientHandshakeResult (SSL *ssl, const std::string &hostname, const asio::error_code &ec) |
| Logs a client handshake's outcome: the TLS version and cipher, or why the server certificate was rejected. | |
Static Public Member Functions inherited from reTurn::AsyncSocketBase | |
| static std::shared_ptr< DataBuffer > | allocateBuffer (size_t size) |
| Utility API. | |
| static size_t | channelDataPadding (size_t length) |
| Over TCP and TLS, a TURN ChannelData message is padded to a multiple of 4 bytes, the padding not counted in its length (RFC 5766 11.5, RFC 8656 12.5): the padding after one of length bytes. | |
| static void | setExclusiveAddressUse (asio::ip::udp::socket &socket) |
| For a UDP socket, between open() and bind(). | |
Static Public Attributes inherited from reTurn::TurnAsyncSocket | |
| static unsigned int | UnspecifiedLifetime = 0xFFFFFFFF |
| static unsigned int | UnspecifiedBandwidth = 0xFFFFFFFF |
| static unsigned short | UnspecifiedToken = 0 |
| static asio::ip::address | UnspecifiedIpAddress |
Protected Member Functions inherited from reTurn::TurnAsyncSocket | |
| void | handleReceivedData (const asio::ip::address &address, unsigned short port, const std::shared_ptr< DataBuffer > &data) |
| void | handleChannelData (const std::shared_ptr< DataBuffer > &data) |
Protected Member Functions inherited from reTurn::AsyncTlsSocketBase | |
| void | handleReadHeader (const asio::error_code &e) override |
| void | handleServerHandshake (const asio::error_code &e) override |
| void | handleTcpResolve (const asio::error_code &ec, const asio::ip::tcp::resolver::results_type &endpoints) override |
| void | handleConnect (const asio::error_code &ec, const asio::ip::tcp::endpoint &endpoint) override |
| void | handleClientHandshake (const asio::error_code &ec, const asio::ip::tcp::endpoint &endpoint) override |
| virtual void | onServerHandshakeSuccess () |
| virtual void | onServerHandshakeFailure (const asio::error_code &e) |
Protected Member Functions inherited from reTurn::AsyncSocketBase | |
| virtual void | handleSend (const asio::error_code &e) |
| Handle completion of a sendData operation. | |
| virtual void | handleReceive (const asio::error_code &e, size_t bytesTransferred) |
| asio::error_code | openAndBind (asio::ip::tcp::socket &socket) |
| For TCP and TLS client sockets. | |
| void | asyncConnect (asio::ip::tcp::socket &socket, const asio::ip::tcp::resolver::results_type &endpoints) |
| void | startIdleTimer (unsigned int timeoutSeconds, std::function< bool()> inUse) |
| For server connections (TcpConnectionIdleTimeout): the connection is closed, with close(), once nothing has been received on it for timeoutSeconds while inUse() is false - eg. | |
| void | noteReceived () |
| void | stopIdleTimer () |
Protected Attributes inherited from reTurn::TurnAsyncSocket | |
| asio::error_code | mBindError |
| asio::io_context & | mIOService |
| TurnAsyncSocketHandler * | mTurnAsyncSocketHandler |
| resip::RecursiveMutex | mHandlerMutex |
| StunTuple | mLocalBinding |
| resip::Data | mUsername |
| resip::Data | mPassword |
| resip::Data | mHmacKey |
| resip::Data | mRealm |
| resip::Data | mNonce |
| resip::Data | mSoftware |
| resip::Data | mLocalHmacKey |
| StunTuple::TransportType | mRequestedTransportType |
| bool | mHaveAllocation |
| StunTuple::TransportType | mRelayTransportType |
| unsigned int | mLifetime |
| ChannelManager | mChannelManager |
| RemotePeer * | mActiveDestination |
Protected Attributes inherited from reTurn::AsyncTlsSocketBase | |
| asio::ssl::stream< asio::ip::tcp::socket > | mSocket |
| asio::ip::tcp::resolver | mResolver |
Protected Attributes inherited from reTurn::AsyncSocketBase | |
| asio::ip::tcp::endpoint | mLocalTcpEndpoint |
| asio::io_context & | mIOService |
| The io_context used to perform asynchronous operations. | |
| std::shared_ptr< DataBuffer > | mReceiveBuffer |
| Receive Buffer and state. | |
| bool | mReceiving |
| asio::ip::address | mConnectedAddress |
| Connected Info and State. | |
| unsigned short | mConnectedPort |
| bool | mConnected |
| AsyncSocketBaseHandler * | mAsyncSocketBaseHandler |
| Handlers. | |
| BeforeClosedHandler | mOnBeforeSocketCloseFp |
| Provides an opportunity for the app to clean up, e.g., QoS-related data or resources just before the socket is closed. | |
Definition at line 18 of file TurnAsyncTlsSocket.hxx.
|
explicit |
Definition at line 19 of file TurnAsyncTlsSocket.cxx.
Implements reTurn::TurnAsyncSocket.
Definition at line 28 of file TurnAsyncTlsSocket.hxx.