diff options
Diffstat (limited to 'bufferevent_mbedtls.c')
-rw-r--r-- | bufferevent_mbedtls.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/bufferevent_mbedtls.c b/bufferevent_mbedtls.c index 95859bd3..765d00be 100644 --- a/bufferevent_mbedtls.c +++ b/bufferevent_mbedtls.c @@ -121,8 +121,9 @@ mbedtls_set_ssl_noops(void *ssl) { } static int -mbedtls_is_ok(int err) +mbedtls_handshake_is_ok(int err) { + /* What mbedtls_ssl_handshake() return on success */ return err == 0; } static int @@ -135,6 +136,11 @@ mbedtls_is_want_write(int err) { return err == MBEDTLS_ERR_SSL_WANT_WRITE; } +static int mbedtls_err_is_ok(int err) +{ + /* What mbedtls_ssl_read() returns when the we can proceed existing data */ + return err == 0; +} static evutil_socket_t be_mbedtls_get_fd(void *ssl) @@ -320,9 +326,10 @@ static struct le_ssl_ops le_mbedtls_ops = { mbedtls_clear, mbedtls_set_ssl_noops, mbedtls_set_ssl_noops, - mbedtls_is_ok, + mbedtls_handshake_is_ok, mbedtls_is_want_read, mbedtls_is_want_write, + mbedtls_err_is_ok, be_mbedtls_get_fd, be_mbedtls_bio_set_fd, (void (*)(struct bufferevent_ssl *))mbedtls_set_ssl_noops, |