summaryrefslogtreecommitdiffstats
path: root/common
diff options
context:
space:
mode:
Diffstat (limited to 'common')
-rw-r--r--common/ssl_calls.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/common/ssl_calls.c b/common/ssl_calls.c
index 0e12e960..8eec7123 100644
--- a/common/ssl_calls.c
+++ b/common/ssl_calls.c
@@ -651,6 +651,15 @@ ssl_tls_accept(struct ssl_tls *self, long ssl_protocols,
* SSL_ERROR_WANT_READ
* SSL_ERROR_WANT_WRITE
*/
+ switch (SSL_get_error(self->ssl, connection_status))
+ {
+ case SSL_ERROR_WANT_READ:
+ g_sck_can_recv(self->trans->sck, SSL_WANT_READ_WRITE_TIMEOUT);
+ break;
+ case SSL_ERROR_WANT_WRITE:
+ g_sck_can_send(self->trans->sck, SSL_WANT_READ_WRITE_TIMEOUT);
+ break;
+ }
}
else
{