summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorunknown <msvensson@neptunus.(none)>2006-09-28 16:21:21 +0200
committerunknown <msvensson@neptunus.(none)>2006-09-28 16:21:21 +0200
commit05145957614f268f6a78d27c0fb32525dba7c0e2 (patch)
treebf7bf0532dd2f6edbbc7fe617fa6e64a6fccb2b4
parent3f01b5df811709ce4427a7eb9dc6ea4cd3f7af8f (diff)
downloadmariadb-git-05145957614f268f6a78d27c0fb32525dba7c0e2.tar.gz
Reduce code for SSL_connect and SSL_accept
There is no need to call SSL_set_accept_state + SSL_do_handshake when we know that SSL_accept should be done. vio/viossl.c: Replace the double calls to "SSL_set_accept_state" and "SSL_do_handshake" with one call to "SSL_accept" Same with "SSL_connect"
-rw-r--r--vio/viossl.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/vio/viossl.c b/vio/viossl.c
index e869493c604..180c7a50fa7 100644
--- a/vio/viossl.c
+++ b/vio/viossl.c
@@ -167,10 +167,9 @@ int sslaccept(struct st_VioSSLFd *ptr, Vio *vio, long timeout)
SSL_clear(ssl);
SSL_SESSION_set_timeout(SSL_get_session(ssl), timeout);
SSL_set_fd(ssl, vio->sd);
- SSL_set_accept_state(ssl);
- if (SSL_do_handshake(ssl) < 1)
+ if (SSL_accept(ssl) < 1)
{
- DBUG_PRINT("error", ("SSL_do_handshake failure"));
+ DBUG_PRINT("error", ("SSL_accept failure"));
report_errors(ssl);
SSL_free(ssl);
vio->ssl_arg= 0;
@@ -242,10 +241,9 @@ int sslconnect(struct st_VioSSLFd *ptr, Vio *vio, long timeout)
SSL_clear(ssl);
SSL_SESSION_set_timeout(SSL_get_session(ssl), timeout);
SSL_set_fd(ssl, vio->sd);
- SSL_set_connect_state(ssl);
- if (SSL_do_handshake(ssl) < 1)
+ if (SSL_connect(ssl) < 1)
{
- DBUG_PRINT("error", ("SSL_do_handshake failure"));
+ DBUG_PRINT("error", ("SSL_connect failure"));
report_errors(ssl);
SSL_free(ssl);
vio->ssl_arg= 0;