qemu-devel
[Top][All Lists]
Advanced

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

Re: [PATCH 7/9] ui: Improve "change vnc" error reporting


From: Markus Armbruster
Subject: Re: [PATCH 7/9] ui: Improve "change vnc" error reporting
Date: Thu, 01 Dec 2022 11:27:39 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux)

Daniel P. Berrangé <berrange@redhat.com> writes:

> On Thu, Dec 01, 2022 at 07:13:09AM +0100, Markus Armbruster wrote:
>> Switch from monitor_printf() to error_setg() and hmp_handle_error().
>> This makes "this is an error" more obvious both in the source and in
>> the monitor, where hmp_handle_error() prefixes the message with
>> "Error: ".
>> 
>> Signed-off-by: Markus Armbruster <armbru@redhat.com>
>> ---
>>  monitor/hmp-cmds.c |  8 ++++----
>>  ui/ui-hmp-cmds.c   | 22 ++++++++++++++++++++++
>>  2 files changed, 26 insertions(+), 4 deletions(-)
>> 
>> diff --git a/monitor/hmp-cmds.c b/monitor/hmp-cmds.c
>> index f0f7b74fb3..8542eee3d4 100644
>> --- a/monitor/hmp-cmds.c
>> +++ b/monitor/hmp-cmds.c
>> @@ -1209,9 +1209,8 @@ void hmp_change(Monitor *mon, const QDict *qdict)
>>  #ifdef CONFIG_VNC
>>      if (strcmp(device, "vnc") == 0) {
>>          if (read_only) {
>> -            monitor_printf(mon,
>> -                           "Parameter 'read-only-mode' is invalid for 
>> VNC\n");
>> -            return;
>> +            error_setg(&err, "Parameter 'read-only-mode' is invalid for 
>> VNC");
>> +            goto end;
>>          }
>>          if (strcmp(target, "passwd") == 0 ||
>>              strcmp(target, "password") == 0) {
>> @@ -1223,7 +1222,8 @@ void hmp_change(Monitor *mon, const QDict *qdict)
>>                  qmp_change_vnc_password(arg, &err);
>>              }
>>          } else {
>> -            monitor_printf(mon, "Expected 'password' after 'vnc'\n");
>> +            error_setg(&err, "Expected 'password' after 'vnc'");
>> +            goto end;
>>          }
>>      } else
>>  #endif
>
> Upto this point
>
>   Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
>
>
>> diff --git a/ui/ui-hmp-cmds.c b/ui/ui-hmp-cmds.c
>> index af290da9e1..90a4f86f25 100644
>> --- a/ui/ui-hmp-cmds.c
>> +++ b/ui/ui-hmp-cmds.c
>> @@ -270,6 +270,28 @@ out:
>>      hmp_handle_error(mon, err);
>>  }
>>  
>> +void hmp_change_vnc(Monitor *mon, const char *device, const char *target,
>> +                    const char *arg, const char *read_only, bool force,
>> +                    Error **errp)
>> +{
>> +    if (read_only) {
>> +        error_setg(mon, "Parameter 'read-only-mode' is invalid for VNC");
>> +        return;
>> +    }
>> +    if (strcmp(target, "passwd") == 0 ||
>> +        strcmp(target, "password") == 0) {
>> +        if (!arg) {
>> +            MonitorHMP *hmp_mon = container_of(mon, MonitorHMP, common);
>> +            monitor_read_password(hmp_mon, hmp_change_read_arg, NULL);
>> +            return;
>> +        } else {
>> +            qmp_change_vnc_password(arg, &err);
>> +        }
>> +    } else {
>> +        monitor_printf(mon, "Expected 'password' after 'vnc'\n");
>> +    }
>> +}
>> +
>
> This chunk ought to be in the next patch IIUC

Oops!  Thank you!

>>  void hmp_sendkey(Monitor *mon, const QDict *qdict)
>>  {
>>      const char *keys = qdict_get_str(qdict, "keys");
>> -- 
>> 2.37.3
>> 
>> 
>
> With regards,
> Daniel




reply via email to

[Prev in Thread] Current Thread [Next in Thread]