[libvirt] [PATCH 17/23] qemu_conf: split out virQEMUDriverConfigLoadSpecificTLS

John Ferlan jferlan at redhat.com
Thu Jan 17 14:18:56 UTC 2019



On 1/15/19 8:23 AM, Ján Tomko wrote:
> Split out parts of the config parsing code to make
> the parent function easier to read.
> 
> This is the only patch that mixes various augeas entry
> groups in one function.
> 
> Signed-off-by: Ján Tomko <jtomko at redhat.com>
> ---
>  src/qemu/qemu_conf.c | 71 ++++++++++++++++++++++++++------------------
>  1 file changed, 42 insertions(+), 29 deletions(-)
> 
> diff --git a/src/qemu/qemu_conf.c b/src/qemu/qemu_conf.c
> index 317756d2a0..b5024705d8 100644
> --- a/src/qemu/qemu_conf.c
> +++ b/src/qemu/qemu_conf.c
> @@ -423,6 +423,47 @@ virQEMUDriverConfigHugeTLBFSInit(virHugeTLBFSPtr hugetlbfs,
>  }
>  
>  
> +static int
> +virQEMUDriverConfigLoadSpecificTLSEntry(virQEMUDriverConfigPtr cfg,
> +                                        virConfPtr conf)
> +{
> +    int rv;
> +
> +    if (virConfGetValueBool(conf, "vxhs_tls", &cfg->vxhsTLS) < 0)
> +        return -1;
> +    if (virConfGetValueString(conf, "vxhs_tls_x509_cert_dir", &cfg->vxhsTLSx509certdir) < 0)
> +        return -1;
> +    if (virConfGetValueBool(conf, "nbd_tls", &cfg->nbdTLS) < 0)
> +        return -1;
> +    if (virConfGetValueString(conf, "nbd_tls_x509_cert_dir", &cfg->nbdTLSx509certdir) < 0)
> +        return -1;
> +
> +#define GET_CONFIG_TLS_CERTINFO(val) \
> +    do { \
> +        if ((rv = virConfGetValueBool(conf, #val "_tls_x509_verify", \
> +                                      &cfg->val## TLSx509verify)) < 0) \
> +            return -1; \
> +        if (rv == 1) \
> +            cfg->val## TLSx509verifyPresent = true; \
> +        if (virConfGetValueString(conf, #val "_tls_x509_cert_dir", \
> +                                  &cfg->val## TLSx509certdir) < 0) \
> +            return -1; \
> +        if (virConfGetValueString(conf, \
> +                                  #val "_tls_x509_secret_uuid", \
> +                                  &cfg->val## TLSx509secretUUID) < 0) \
> +            return -1; \
> +    } while (0)
> +
> +    if (virConfGetValueBool(conf, "chardev_tls", &cfg->chardevTLS) < 0)
> +        return -1;
> +    GET_CONFIG_TLS_CERTINFO(chardev);
> +
> +    GET_CONFIG_TLS_CERTINFO(migrate);
> +
> +#undef GET_CONFIG_TLS_CERTINFO
> +    return 0;
> +}
> +

blank line

>  static int
>  virQEMUDriverConfigLoadRemoteDisplayEntry(virQEMUDriverConfigPtr cfg,
>                                            virConfPtr conf,
> @@ -962,38 +1003,10 @@ int virQEMUDriverConfigLoadFile(virQEMUDriverConfigPtr cfg,
>          goto cleanup;
>      if (virConfGetValueBool(conf, "spice_auto_unix_socket", &cfg->spiceAutoUnixSocket) < 0)
>          goto cleanup;
> -    if (virConfGetValueBool(conf, "vxhs_tls", &cfg->vxhsTLS) < 0)
> -        goto cleanup;
> -    if (virConfGetValueString(conf, "vxhs_tls_x509_cert_dir", &cfg->vxhsTLSx509certdir) < 0)
> -        goto cleanup;
> -    if (virConfGetValueBool(conf, "nbd_tls", &cfg->nbdTLS) < 0)
> -        goto cleanup;
> -    if (virConfGetValueString(conf, "nbd_tls_x509_cert_dir", &cfg->nbdTLSx509certdir) < 0)
>          goto cleanup;

This results in a double goto cleanup; ...

Reviewed-by: John Ferlan <jferlan at redhat.com>

John

[...]




More information about the libvir-list mailing list