summaryrefslogtreecommitdiff
path: root/vio
diff options
context:
space:
mode:
authorMarko Mäkelä <marko.makela@mariadb.com>2018-11-08 09:50:56 +0200
committerMarko Mäkelä <marko.makela@mariadb.com>2018-11-08 10:19:55 +0200
commitc761b43451d54eeeecdf3c102906fcce88d4e9d9 (patch)
treec00b07bf4b36108f1ecbfc3015b5594899e0e248 /vio
parent07e4853c232726a639b30d4718bef9914ea42d24 (diff)
parentbac2ec3a5b28ed590826b20a4cf27fd788903bbd (diff)
downloadmariadb-git-c761b43451d54eeeecdf3c102906fcce88d4e9d9.tar.gz
Merge 10.3 into 10.4mariadb-10.4.0
Diffstat (limited to 'vio')
-rw-r--r--vio/viossl.c10
1 files changed, 3 insertions, 7 deletions
diff --git a/vio/viossl.c b/vio/viossl.c
index b3e2bca6676..e0708ca0a12 100644
--- a/vio/viossl.c
+++ b/vio/viossl.c
@@ -124,6 +124,9 @@ static my_bool ssl_should_retry(Vio *vio, int ret, enum enum_vio_io_event *event
default:
should_retry= FALSE;
ssl_set_sys_error(ssl_error);
+#ifndef HAVE_YASSL
+ ERR_clear_error();
+#endif
break;
}
@@ -315,21 +318,16 @@ static int ssl_do(struct st_VioSSLFd *ptr, Vio *vio, long timeout,
{
int r;
SSL *ssl;
- my_bool unused;
- my_bool was_blocking;
my_socket sd= mysql_socket_getfd(vio->mysql_socket);
DBUG_ENTER("ssl_do");
DBUG_PRINT("enter", ("ptr: %p, sd: %d ctx: %p",
ptr, (int)sd, ptr->ssl_context));
- /* Set socket to blocking if not already set */
- vio_blocking(vio, 1, &was_blocking);
if (!(ssl= SSL_new(ptr->ssl_context)))
{
DBUG_PRINT("error", ("SSL_new failure"));
*errptr= ERR_get_error();
- vio_blocking(vio, was_blocking, &unused);
DBUG_RETURN(1);
}
DBUG_PRINT("info", ("ssl: %p timeout: %ld", ssl, timeout));
@@ -360,7 +358,6 @@ static int ssl_do(struct st_VioSSLFd *ptr, Vio *vio, long timeout,
DBUG_PRINT("error", ("SSL_connect/accept failure"));
*errptr= SSL_errno(ssl, r);
SSL_free(ssl);
- vio_blocking(vio, was_blocking, &unused);
DBUG_RETURN(1);
}
@@ -371,7 +368,6 @@ static int ssl_do(struct st_VioSSLFd *ptr, Vio *vio, long timeout,
*/
if (vio_reset(vio, VIO_TYPE_SSL, SSL_get_fd(ssl), ssl, 0))
{
- vio_blocking(vio, was_blocking, &unused);
DBUG_RETURN(1);
}