SSL_read() returning SSL_ERROR_SYSCALL with errno 11 EAGAIN
John.Unsworth at synchronoss.com
Tue May 7 08:05:59 UTC 2019
Thanks, the mutex is tied to the SSL session and used for all calls (now!).
The good news is that moving SSL_get_error() into the same mutex unit as SSL_read() has solved the problem.
Thank you for all your help and advice.
John Unsworth |Meta-Directory Engineering and Support
Mobile: +44 777.557.2643
From: openssl-users <openssl-users-bounces at openssl.org> On Behalf Of Viktor Dukhovni
Sent: 03 May 2019 23:04
To: openssl-users at openssl.org
Subject: Re: SSL_read() returning SSL_ERROR_SYSCALL with errno 11 EAGAIN
CAUTION: This email originated from outside of Synchronoss.
On Fri, May 03, 2019 at 09:34:14AM +0000, John Unsworth wrote:
> Testing changed code.
For the record, though I think you realise this, *both* the SSL_read()
or SSL_write() and the following SSL_get_error() need to be protected
as a unit by the *same* instance of the locked mutex. It would not
be enough to lock these separately.
ret = SSL_read(ssl, ...);
ret = SSL_write(ssl, ...);
if (ret <= 0)
err = SSL_get_error(ssl, ret);
/* Handle EOF and errors */
More information about the openssl-users