diff --git a/mongoose.c b/mongoose.c index 6182d23c..49c78424 100644 --- a/mongoose.c +++ b/mongoose.c @@ -4370,10 +4370,6 @@ enum mg_ssl_if_result mg_ssl_if_conn_init( return MG_SSL_ERROR; } - if (params->server_name != NULL) { - /* TODO(rojer): Implement server name verification on mbedTLS. */ - } - mg_set_cipher_list(ctx, NULL); if (!(nc->flags & MG_F_LISTENING)) { @@ -4383,6 +4379,10 @@ enum mg_ssl_if_result mg_ssl_if_conn_init( MG_SET_PTRPTR(err_msg, "Failed to create SSL session"); return MG_SSL_ERROR; } + if (params->server_name != NULL && + mbedtls_ssl_set_hostname(ctx->ssl, params->server_name) != 0) { + return MG_SSL_ERROR; + } } nc->flags |= MG_F_SSL;