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 <arm...@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é <berra...@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 > void hmp_sendkey(Monitor *mon, const QDict *qdict) > { > const char *keys = qdict_get_str(qdict, "keys"); > -- > 2.37.3 > > With regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|