summary refs log tree commit diff stats
path: root/src/common
diff options
context:
space:
mode:
Diffstat (limited to 'src/common')
-rw-r--r--src/common/server.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/common/server.c b/src/common/server.c
index df98ef17..f2c5f91d 100644
--- a/src/common/server.c
+++ b/src/common/server.c
@@ -748,7 +748,6 @@ server_connect_success (server *serv)
 
 		/* it'll be a memory leak, if connection isn't terminated by
 		   server_cleanup() */
-		serv->ssl = _SSL_socket (serv->ctx, serv->sok);
 		if ((err = _SSL_set_verify (serv->ctx, ssl_cb_verify, NULL)))
 		{
 			EMIT_SIGNAL (XP_TE_CONNFAIL, serv->server_session, err, NULL,
@@ -756,6 +755,7 @@ server_connect_success (server *serv)
 			server_cleanup (serv);	/* ->connecting = FALSE */
 			return;
 		}
+		serv->ssl = _SSL_socket (serv->ctx, serv->sok);
 		/* FIXME: it'll be needed by new servers */
 		/* send(serv->sok, "STLS\r\n", 6, 0); sleep(1); */
 		set_nonblocking (serv->sok);