Only call ERR_clear_error() after an error has occurred.
This commit is contained in:
parent
253326dcc9
commit
47dadb902d
@ -856,7 +856,6 @@ ssize_t net__read(struct mosquitto *mosq, void *buf, size_t count)
|
|||||||
errno = 0;
|
errno = 0;
|
||||||
#ifdef WITH_TLS
|
#ifdef WITH_TLS
|
||||||
if(mosq->ssl){
|
if(mosq->ssl){
|
||||||
ERR_clear_error();
|
|
||||||
ret = SSL_read(mosq->ssl, buf, count);
|
ret = SSL_read(mosq->ssl, buf, count);
|
||||||
if(ret <= 0){
|
if(ret <= 0){
|
||||||
err = SSL_get_error(mosq->ssl, ret);
|
err = SSL_get_error(mosq->ssl, ret);
|
||||||
@ -871,6 +870,7 @@ ssize_t net__read(struct mosquitto *mosq, void *buf, size_t count)
|
|||||||
net__print_ssl_error(mosq);
|
net__print_ssl_error(mosq);
|
||||||
errno = EPROTO;
|
errno = EPROTO;
|
||||||
}
|
}
|
||||||
|
ERR_clear_error();
|
||||||
#ifdef WIN32
|
#ifdef WIN32
|
||||||
WSASetLastError(errno);
|
WSASetLastError(errno);
|
||||||
#endif
|
#endif
|
||||||
@ -904,7 +904,6 @@ ssize_t net__write(struct mosquitto *mosq, void *buf, size_t count)
|
|||||||
#ifdef WITH_TLS
|
#ifdef WITH_TLS
|
||||||
if(mosq->ssl){
|
if(mosq->ssl){
|
||||||
mosq->want_write = false;
|
mosq->want_write = false;
|
||||||
ERR_clear_error();
|
|
||||||
ret = SSL_write(mosq->ssl, buf, count);
|
ret = SSL_write(mosq->ssl, buf, count);
|
||||||
if(ret < 0){
|
if(ret < 0){
|
||||||
err = SSL_get_error(mosq->ssl, ret);
|
err = SSL_get_error(mosq->ssl, ret);
|
||||||
@ -919,6 +918,7 @@ ssize_t net__write(struct mosquitto *mosq, void *buf, size_t count)
|
|||||||
net__print_ssl_error(mosq);
|
net__print_ssl_error(mosq);
|
||||||
errno = EPROTO;
|
errno = EPROTO;
|
||||||
}
|
}
|
||||||
|
ERR_clear_error();
|
||||||
#ifdef WIN32
|
#ifdef WIN32
|
||||||
WSASetLastError(errno);
|
WSASetLastError(errno);
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
Reference in New Issue
Block a user