[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [libvirt] [PATCH 07/10] Support virDomainOpenConsole with QEMU



On 11/01/2010 10:12 AM, Daniel P. Berrange wrote:
> This provides an implementation of the virDomainOpenConsole
> API with the QEMU driver. For the streams code, this reuses
> most of the code previously added for the tunnelled migration
> streams since it is generic.
> 
> * src/qemu/qemu_driver.c: Support virDomainOpenConsole
> ---
>  src/qemu/qemu_driver.c |   76 +++++++++++++++++++++++++++++++++++++++++++++++-
>  1 files changed, 75 insertions(+), 1 deletions(-)

> 
> +    if (devname) {
> +        if (vm->def->console &&
> +            STREQ(devname, vm->def->console->info.alias))
> +            chr = vm->def->console;
> +        for (i = 0 ; !chr && i < vm->def->nserials ; i++) {
> +            if (STREQ(devname, vm->def->serials[i]->info.alias))
> +                chr = vm->def->serials[i];
> +        }

Are we guaranteed that all devices will have a non-NULL and unique
alias, or do we need to do either of these:

1. break on the first hit (rather than favoring the last instance of a
duplicate alias)

2. use STREQ_NULLABLE(devname, ...alias), to be robust against an
unaliased device

> +    if (!chr) {
> +        qemuReportError(VIR_ERR_INTERNAL_ERROR,
> +                        _("cannot find character device %s"), devname);

NULLSTR(devname)

> +        goto cleanup;
> +    }
> +
> +    if (chr->type != VIR_DOMAIN_CHR_TYPE_PTY) {
> +        qemuReportError(VIR_ERR_INTERNAL_ERROR,
> +                        _("character device %s is not using a PTY"), devname);

NULLSTR(devname)


-- 
Eric Blake   eblake redhat com    +1-801-349-2682
Libvirt virtualization library http://libvirt.org

Attachment: signature.asc
Description: OpenPGP digital signature


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]