QEMU Machine Protocol (QMP) commands
------------------------------------
-``change`` (since 2.5.0)
-''''''''''''''''''''''''
-
-Use ``blockdev-change-medium`` or ``change-vnc-password`` instead.
-
``blockdev-open-tray``, ``blockdev-close-tray`` argument ``device`` (since 2.8.0)
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Use ``device_add`` for hotplugging vCPUs instead of ``cpu-add``. See
documentation of ``query-hotpluggable-cpus`` for additional details.
+``change`` (removed in 6.0)
+'''''''''''''''''''''''''''
+
+Use ``blockdev-change-medium`` or ``change-vnc-password`` instead.
+
Human Monitor Protocol (HMP) commands
-------------------------------------
error_setg(errp, "Could not set password");
}
}
-
-static void qmp_change_vnc_listen(const char *target, Error **errp)
-{
- QemuOptsList *olist = qemu_find_opts("vnc");
- QemuOpts *opts;
-
- if (strstr(target, "id=")) {
- error_setg(errp, "id not supported");
- return;
- }
-
- opts = qemu_opts_find(olist, "default");
- if (opts) {
- qemu_opts_del(opts);
- }
- opts = vnc_parse(target, errp);
- if (!opts) {
- return;
- }
-
- vnc_display_open("default", errp);
-}
-
-static void qmp_change_vnc(const char *target, bool has_arg, const char *arg,
- Error **errp)
-{
- if (strcmp(target, "passwd") == 0 || strcmp(target, "password") == 0) {
- if (!has_arg) {
- error_setg(errp, QERR_MISSING_PARAMETER, "password");
- } else {
- qmp_change_vnc_password(arg, errp);
- }
- } else {
- qmp_change_vnc_listen(target, errp);
- }
-}
-#endif /* !CONFIG_VNC */
-
-void qmp_change(const char *device, const char *target,
- bool has_arg, const char *arg, Error **errp)
-{
- if (strcmp(device, "vnc") == 0) {
-#ifdef CONFIG_VNC
- qmp_change_vnc(target, has_arg, arg, errp);
-#else
- error_setg(errp, QERR_FEATURE_DISABLED, "vnc");
#endif
- } else {
- qmp_blockdev_change_medium(true, device, false, NULL, target,
- has_arg, arg, false, 0, errp);
- }
-}
void qmp_add_client(const char *protocol, const char *fdname,
bool has_skipauth, bool skipauth, bool has_tls, bool tls,
'features': [ 'savevm-monitor-nodes' ] }
##
-# @change:
-#
-# This command is multiple commands multiplexed together.
-#
-# @device: This is normally the name of a block device but it may also be 'vnc'.
-# when it's 'vnc', then sub command depends on @target
-#
-# @target: If @device is a block device, then this is the new filename.
-# If @device is 'vnc', then if the value 'password' selects the vnc
-# change password command. Otherwise, this specifies a new server URI
-# address to listen to for VNC connections.
-#
-# @arg: If @device is a block device, then this is an optional format to open
-# the device with.
-# If @device is 'vnc' and @target is 'password', this is the new VNC
-# password to set. See change-vnc-password for additional notes.
-#
-# Features:
-# @deprecated: This command is deprecated. For changing block
-# devices, use 'blockdev-change-medium' instead; for changing VNC
-# parameters, use 'change-vnc-password' instead.
-#
-# Returns: - Nothing on success.
-# - If @device is not a valid block device, DeviceNotFound
-#
-# Since: 0.14
-#
-# Example:
-#
-# 1. Change a removable medium
-#
-# -> { "execute": "change",
-# "arguments": { "device": "ide1-cd0",
-# "target": "/srv/images/Fedora-12-x86_64-DVD.iso" } }
-# <- { "return": {} }
-#
-# 2. Change VNC password
-#
-# -> { "execute": "change",
-# "arguments": { "device": "vnc", "target": "password",
-# "arg": "foobar1" } }
-# <- { "return": {} }
-#
-##
-{ 'command': 'change',
- 'data': {'device': 'str', 'target': 'str', '*arg': 'str'},
- 'features': [ 'deprecated' ] }
-
-##
# @getfd:
#
# Receive a file descriptor via SCM rights and assign it a name