Re: [boost] [asio] SSL operation sporadically returns "Access is denied"

Hi Scott, Scott <cheesy4poofs@cox.net> wrote:
When the error occurs, here's the values I'm seeing going from top to bottom:
int rc = primitive_( session_ ); // -1 int sys_error_code = (int)ERR_get_error(); // 0 bool is_operation_done = (rc > 0); // false int error_code = !is_operation_done ? // 5 bool is_read_needed = (error_code == SSL_ERROR_WANT_READ); // false bool is_write_needed = (error_code == SSL_ERROR_WANT_WRITE || // false bool is_shut_down_received = // false bool is_shut_down_sent = // false
OK, this is not quite what I expected :( I had a skim through the openssl source but couldn't find why using the openssl API in non-blocking mode should return SSL_ERROR_SYSCALL. It's a bit hard to know where to go next without access to a reproducible test case. You might try adding some debug tracing that prints the amount of data that passed in and out of the BIO_write and BIO_read calls to see if anything looks wrong. Cheers, Chris
participants (1)
-
Christopher Kohlhoff