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: 767abe7f49e8be14d29da5db3527817b5d696a52
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>
This commit is contained in:
parent
677746b39f
commit
a9b305ba29
@ -1263,12 +1263,16 @@ static bool qmp_chardev_validate_socket(ChardevSocket *sock,
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (sock->has_wait) {
|
if (sock->has_wait) {
|
||||||
|
warn_report("'wait' option is deprecated with "
|
||||||
|
"socket in client connect mode");
|
||||||
|
if (sock->wait) {
|
||||||
error_setg(errp, "%s",
|
error_setg(errp, "%s",
|
||||||
"'wait' option is incompatible with "
|
"'wait' option is incompatible with "
|
||||||
"socket in client connect mode");
|
"socket in client connect mode");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -105,6 +105,11 @@ details.
|
|||||||
The ``query-events'' command has been superseded by the more powerful
|
The ``query-events'' command has been superseded by the more powerful
|
||||||
and accurate ``query-qmp-schema'' command.
|
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
|
@section Human Monitor Protocol (HMP) commands
|
||||||
|
|
||||||
@subsection The hub_id parameter of 'hostfwd_add' / 'hostfwd_remove' (since 3.1)
|
@subsection The hub_id parameter of 'hostfwd_add' / 'hostfwd_remove' (since 3.1)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user