From fa2780a40da9313337b7cca0ba68783a6829b5e3 Mon Sep 17 00:00:00 2001 From: Přemysl Janouch Date: Sun, 21 Sep 2014 03:18:00 +0200 Subject: Fix the TLS/SSL transport --- ponymap.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/ponymap.c b/ponymap.c index 1dc1792..0f0b64e 100644 --- a/ponymap.c +++ b/ponymap.c @@ -1003,6 +1003,7 @@ transport_tls_init (struct unit *u) struct transport_tls_data *data = xcalloc (1, sizeof *data); data->ssl = ssl; + // XXX: maybe set `ssl_rx_want_tx' to force a handshake? u->transport_data = data; return true; } @@ -1063,10 +1064,10 @@ transport_tls_on_readable (struct unit *u) case SSL_ERROR_ZERO_RETURN: return TRANSPORT_IO_EOF; case SSL_ERROR_WANT_READ: - return true; + return TRANSPORT_IO_OK; case SSL_ERROR_WANT_WRITE: data->ssl_rx_want_tx = true; - return true; + return TRANSPORT_IO_OK; case XSSL_ERROR_TRY_AGAIN: continue; default: -- cgit v1.2.3-70-g09d2