[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-block] [PATCH for-2.10 07/10] migration: Clean up around tls_c
From: |
Dr. David Alan Gilbert |
Subject: |
Re: [Qemu-block] [PATCH for-2.10 07/10] migration: Clean up around tls_creds, tls_hostname |
Date: |
Tue, 18 Jul 2017 18:37:20 +0100 |
User-agent: |
Mutt/1.8.3 (2017-05-23) |
* Markus Armbruster (address@hidden) wrote:
> Optional MigrationParameters members tls_creds and tls_hostname can't
> actually be absent outside qmp_migrate_set_parameters() since commit
> 4af245d (v2.9.0).
>
> Note that commit 4af245d reverted the part of commit de63ab6 (v2.8.0)
> that made tls_creds and tls_hostname absent instead of "" in the value
> of query-migrate-parameters, even though commit de63ab6 called that a
> mistake. What a mess.
>
> Drop the redundant tests for presence, and update documentation.
>
> Signed-off-by: Markus Armbruster <address@hidden>
Reviewed-by: Dr. David Alan Gilbert <address@hidden>
> ---
> hmp.c | 6 ++++--
> migration/migration.c | 4 ++--
> qapi-schema.json | 11 +++++------
> 3 files changed, 11 insertions(+), 10 deletions(-)
>
> diff --git a/hmp.c b/hmp.c
> index 2993586..2b2db3c 100644
> --- a/hmp.c
> +++ b/hmp.c
> @@ -313,12 +313,14 @@ void hmp_info_migrate_parameters(Monitor *mon, const
> QDict *qdict)
> monitor_printf(mon, "%s: %" PRId64 "\n",
>
> MigrationParameter_lookup[MIGRATION_PARAMETER_CPU_THROTTLE_INCREMENT],
> params->cpu_throttle_increment);
> + assert(params->has_tls_creds);
> monitor_printf(mon, "%s: '%s'\n",
> MigrationParameter_lookup[MIGRATION_PARAMETER_TLS_CREDS],
> - params->has_tls_creds ? params->tls_creds : "");
> + params->tls_creds);
> + assert(params->has_tls_hostname);
> monitor_printf(mon, "%s: '%s'\n",
> MigrationParameter_lookup[MIGRATION_PARAMETER_TLS_HOSTNAME],
> - params->has_tls_hostname ? params->tls_hostname : "");
> + params->tls_hostname);
> assert(params->has_max_bandwidth);
> monitor_printf(mon, "%s: %" PRId64 " bytes/second\n",
> MigrationParameter_lookup[MIGRATION_PARAMETER_MAX_BANDWIDTH],
> diff --git a/migration/migration.c b/migration/migration.c
> index a0db40d..bae9808 100644
> --- a/migration/migration.c
> +++ b/migration/migration.c
> @@ -438,9 +438,9 @@ MigrationParameters *qmp_query_migrate_parameters(Error
> **errp)
> params->cpu_throttle_initial = s->parameters.cpu_throttle_initial;
> params->has_cpu_throttle_increment = true;
> params->cpu_throttle_increment = s->parameters.cpu_throttle_increment;
> - params->has_tls_creds = !!s->parameters.tls_creds;
> + params->has_tls_creds = true;
> params->tls_creds = g_strdup(s->parameters.tls_creds);
> - params->has_tls_hostname = !!s->parameters.tls_hostname;
> + params->has_tls_hostname = true;
> params->tls_hostname = g_strdup(s->parameters.tls_hostname);
> params->has_max_bandwidth = true;
> params->max_bandwidth = s->parameters.max_bandwidth;
> diff --git a/qapi-schema.json b/qapi-schema.json
> index 485767f..7b75cf1 100644
> --- a/qapi-schema.json
> +++ b/qapi-schema.json
> @@ -1054,9 +1054,7 @@
> # @MigrationParameters:
> #
> # Optional members can be omitted on input ('migrate-set-parameters')
> -# but most members will always be present on output
> -# ('query-migrate-parameters'), with the exception of tls-creds and
> -# tls-hostname.
> +# but members will always be present on output.
> #
> # @compress-level: compression level
> #
> @@ -1077,10 +1075,10 @@
> # channel. On the outgoing side of the migration, the credentials
> # must be for a 'client' endpoint, while for the incoming side
> the
> # credentials must be for a 'server' endpoint. Setting this
> -# will enable TLS for all migrations. The default is unset,
> -# resulting in unsecured migration at the QEMU level. (Since 2.7)
> +# to a non-empty string enables TLS for all migrations.
> # An empty string means that QEMU will use plain text mode for
> -# migration, rather than TLS (Since 2.9)
> +# migration, rather than TLS (Since 2.7)
> +# Note: 2.8 reports this by omitting tls-creds instead.
> #
> # @tls-hostname: hostname of the target host for the migration. This
> # is required when using x509 based TLS credentials and the
> @@ -1090,6 +1088,7 @@
> # certificate identity can be validated. (Since 2.7)
> # An empty string means that QEMU will use the hostname
> # associated with the migration URI, if any. (Since 2.9)
> +# Note: 2.8 reports this by omitting tls-hostname instead.
> #
> # @max-bandwidth: to set maximum speed for migration. maximum speed in
> # bytes per second. (Since 2.8)
> --
> 2.7.5
>
--
Dr. David Alan Gilbert / address@hidden / Manchester, UK
- [Qemu-block] [PATCH for-2.10 02/10] qapi: Use QNull for a more regular visit_type_null(), (continued)
- [Qemu-block] [PATCH for-2.10 02/10] qapi: Use QNull for a more regular visit_type_null(), Markus Armbruster, 2017/07/18
- [Qemu-block] [PATCH for-2.10 01/10] qapi: Separate type QNull from QObject, Markus Armbruster, 2017/07/18
- [Qemu-block] [PATCH for-2.10 07/10] migration: Clean up around tls_creds, tls_hostname, Markus Armbruster, 2017/07/18
- [Qemu-block] [PATCH for-2.10 04/10] tests/test-qobject-input-visitor: Drop redundant test, Markus Armbruster, 2017/07/18
- [Qemu-block] [PATCH for-2.10 10/10] migration: Use JSON null instead of "" to reset parameter to default, Markus Armbruster, 2017/07/18