mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-12-17 21:26:13 -07:00
qga: conditionalize schema for commands only supported on Windows
Rather than creating stubs for every command that just return
QERR_UNSUPPORTED, use 'if' conditions in the QAPI schema to
fully exclude generation of the commands on non-Windows.
The command will be rejected at QMP dispatch time instead,
avoiding reimplementing rejection by blocking the stub commands.
This changes the error message for affected commands from
{"class": "CommandNotFound", "desc": "Command FOO has been disabled"}
to
{"class": "CommandNotFound", "desc": "The command FOO has not been found"}
This has the additional benefit that the QGA protocol reference
now documents what conditions enable use of the command.
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Konstantin Kostiuk <kkostiuk@redhat.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
Reviewed-by: Manos Pitsidianakis <manos.pitsidianakis@linaro.org>
Message-ID: <20240712132459.3974109-13-berrange@redhat.com>
Signed-off-by: Konstantin Kostiuk <kkostiuk@redhat.com>
This commit is contained in:
parent
83a7a1ab9a
commit
dedf99f303
2 changed files with 10 additions and 14 deletions
|
|
@ -1207,8 +1207,6 @@ GList *ga_command_init_blockedrpcs(GList *blockedrpcs)
|
|||
blockedrpcs = g_list_append(blockedrpcs, g_strdup("guest-fstrim"));
|
||||
#endif
|
||||
|
||||
blockedrpcs = g_list_append(blockedrpcs, g_strdup("guest-get-devices"));
|
||||
|
||||
return blockedrpcs;
|
||||
}
|
||||
|
||||
|
|
@ -1419,13 +1417,6 @@ GuestOSInfo *qmp_guest_get_osinfo(Error **errp)
|
|||
return info;
|
||||
}
|
||||
|
||||
GuestDeviceInfoList *qmp_guest_get_devices(Error **errp)
|
||||
{
|
||||
error_setg(errp, QERR_UNSUPPORTED);
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
#ifndef HOST_NAME_MAX
|
||||
# ifdef _POSIX_HOST_NAME_MAX
|
||||
# define HOST_NAME_MAX _POSIX_HOST_NAME_MAX
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue