Browse Source

socket: allow wait=false for client socket

Commit 767abe7 ("chardev: forbid 'wait' option with client sockets")
is a bit too strict. Current libvirt always set wait=false, and will
thus fail to add client chardev.

Make the code more permissive, allowing wait=false with client socket
chardevs. Deprecate usage of 'wait' with client sockets.

Fixes: 767abe7f49
Cc: Daniel P. Berrangé <berrange@redhat.com>
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-id: 20190415163337.2795-1-marcandre.lureau@redhat.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
tags/v4.0.0-rc4
Marc-André Lureau 7 months ago
parent
commit
a9b305ba29
2 changed files with 13 additions and 4 deletions
  1. +8
    -4
      chardev/char-socket.c
  2. +5
    -0
      qemu-deprecated.texi

+ 8
- 4
chardev/char-socket.c View File

@@ -1263,10 +1263,14 @@ static bool qmp_chardev_validate_socket(ChardevSocket *sock,
return false;
}
if (sock->has_wait) {
error_setg(errp, "%s",
"'wait' option is incompatible with "
"socket in client connect mode");
return false;
warn_report("'wait' option is deprecated with "
"socket in client connect mode");
if (sock->wait) {
error_setg(errp, "%s",
"'wait' option is incompatible with "
"socket in client connect mode");
return false;
}
}
}


+ 5
- 0
qemu-deprecated.texi View File

@@ -105,6 +105,11 @@ details.
The ``query-events'' command has been superseded by the more powerful
and accurate ``query-qmp-schema'' command.

@subsection chardev client socket with 'wait' option (since 4.0)

Character devices creating sockets in client mode should not specify
the 'wait' field, which is only applicable to sockets in server mode

@section Human Monitor Protocol (HMP) commands

@subsection The hub_id parameter of 'hostfwd_add' / 'hostfwd_remove' (since 3.1)

Loading…
Cancel
Save