Do not reset SNI data in SSL_do_handshake()
[openssl.git] / ssl / statem / extensions.c
index cd4f078cf3d80622bf83a807e3b5f22534e4080e..8422161dc103679da683127a7e31ce043edffd1c 100644 (file)
@@ -904,9 +904,13 @@ static int final_renegotiate(SSL *s, unsigned int context, int sent)
 
 static int init_server_name(SSL *s, unsigned int context)
 {
-    if (s->server)
+    if (s->server) {
         s->servername_done = 0;
 
+        OPENSSL_free(s->ext.hostname);
+        s->ext.hostname = NULL;
+    }
+
     return 1;
 }