Signed-off-by: Juan Quintela <[email protected]>
---
migration/options.h | 1 +
migration/options.c | 7 +++++++
migration/tls.c | 6 ++++--
3 files changed, 12 insertions(+), 2 deletions(-)
diff --git a/migration/options.h b/migration/options.h
index 31d50cadd0..3284f95312 100644
--- a/migration/options.h
+++ b/migration/options.h
@@ -84,6 +84,7 @@ int migrate_multifd_zstd_level(void);
uint8_t migrate_throttle_trigger_threshold(void);
char *migrate_tls_authz(void);
char *migrate_tls_creds(void);
+char *migrate_tls_hostname(void);
uint64_t migrate_xbzrle_cache_size(void);
/* parameters setters */
diff --git a/migration/options.c b/migration/options.c
index 42ad3e941d..96d20a9cfc 100644
--- a/migration/options.c
+++ b/migration/options.c
@@ -597,6 +597,13 @@ char *migrate_tls_creds(void)
return s->parameters.tls_creds;
}
+char *migrate_tls_hostname(void)
+{
+ MigrationState *s = migrate_get_current();
+
+ return s->parameters.tls_hostname;
+}
+
uint64_t migrate_xbzrle_cache_size(void)
{
MigrationState *s = migrate_get_current();
diff --git a/migration/tls.c b/migration/tls.c
index 4c229326fd..3cae1a06e7 100644
--- a/migration/tls.c
+++ b/migration/tls.c
@@ -123,6 +123,7 @@ QIOChannelTLS *migration_tls_client_create(MigrationState
*s,
Error **errp)
{
QCryptoTLSCreds *creds;
+ char *tls_hostname;
creds = migration_tls_get_creds(
s, QCRYPTO_TLS_CREDS_ENDPOINT_CLIENT, errp);
@@ -130,8 +131,9 @@ QIOChannelTLS *migration_tls_client_create(MigrationState
*s,
return NULL;
}
- if (s->parameters.tls_hostname && *s->parameters.tls_hostname) {
- hostname = s->parameters.tls_hostname;
+ tls_hostname = migrate_tls_hostname();
+ if (tls_hostname && *tls_hostname) {
+ hostname = tls_hostname;
}
return qio_channel_tls_new_client(ioc, creds, hostname, errp);
--
2.39.2