(websocket+tls) fix hang in tls handshake which could lead to ANR, discovered through unittesting.

This commit is contained in:
Benjamin Sergeant
2020-03-20 16:57:27 -07:00
parent 829751b7af
commit 1d6373335c
8 changed files with 58 additions and 19 deletions

View File

@ -37,6 +37,10 @@ namespace ix
static OSStatus writeToSocket(SSLConnectionRef connection, const void* data, size_t* len);
static OSStatus readFromSocket(SSLConnectionRef connection, void* data, size_t* len);
OSStatus tlsHandShake(
std::string& errMsg,
const CancellationRequest& isCancellationRequested);
SSLContextRef _sslContext;
mutable std::mutex _mutex; // AppleSSL routines are not thread-safe