Commit 2815cf25 authored by Dominik Charousset's avatar Dominik Charousset

Fix error handling in OpenSSL wrapper

parent 4f44a6c8
...@@ -104,24 +104,29 @@ errc connection::last_error(ptrdiff_t ret) const { ...@@ -104,24 +104,29 @@ errc connection::last_error(ptrdiff_t ret) const {
// -- connecting and teardown -------------------------------------------------- // -- connecting and teardown --------------------------------------------------
ptrdiff_t connection::connect() { ptrdiff_t connection::connect() {
ERR_clear_error();
return SSL_connect(native(pimpl_)); return SSL_connect(native(pimpl_));
} }
ptrdiff_t connection::accept() { ptrdiff_t connection::accept() {
ERR_clear_error();
return SSL_accept(native(pimpl_)); return SSL_accept(native(pimpl_));
} }
ptrdiff_t connection::close() { ptrdiff_t connection::close() {
ERR_clear_error();
return SSL_shutdown(native(pimpl_)); return SSL_shutdown(native(pimpl_));
} }
// -- reading and writing ------------------------------------------------------ // -- reading and writing ------------------------------------------------------
ptrdiff_t connection::read(byte_span buf) { ptrdiff_t connection::read(byte_span buf) {
ERR_clear_error();
return SSL_read(native(pimpl_), buf.data(), static_cast<int>(buf.size())); return SSL_read(native(pimpl_), buf.data(), static_cast<int>(buf.size()));
} }
ptrdiff_t connection::write(const_byte_span buf) { ptrdiff_t connection::write(const_byte_span buf) {
ERR_clear_error();
return SSL_write(native(pimpl_), buf.data(), static_cast<int>(buf.size())); return SSL_write(native(pimpl_), buf.data(), static_cast<int>(buf.size()));
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment