qapi: convert add_client
Also fixes a few issues while there:
1. The fd returned by monitor_get_fd() leaks in most error conditions
2. monitor_get_fd() return value is not checked. Best case we get
an error that is not correctly reported, worse case one of the
functions using the fd (with value of -1) will explode
3. A few error conditions aren't reported
4. We now "use up" @fdname always. Before, it was left alone for
invalid @protocol
Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
This commit is contained in:
parent
a9940fc4cb
commit
b224e5e216
4 changed files with 69 additions and 43 deletions
|
|
@ -32,6 +32,31 @@
|
|||
'DeviceNotActive', 'DeviceNotFound', 'KVMMissingCap',
|
||||
'MigrationExpected' ] }
|
||||
|
||||
##
|
||||
# @add_client
|
||||
#
|
||||
# Allow client connections for VNC, Spice and socket based
|
||||
# character devices to be passed in to QEMU via SCM_RIGHTS.
|
||||
#
|
||||
# @protocol: protocol name. Valid names are "vnc", "spice" or the
|
||||
# name of a character device (eg. from -chardev id=XXXX)
|
||||
#
|
||||
# @fdname: file descriptor name previously passed via 'getfd' command
|
||||
#
|
||||
# @skipauth: #optional whether to skip authentication. Only applies
|
||||
# to "vnc" and "spice" protocols
|
||||
#
|
||||
# @tls: #optional whether to perform TLS. Only applies to the "spice"
|
||||
# protocol
|
||||
#
|
||||
# Returns: nothing on success.
|
||||
#
|
||||
# Since: 0.14.0
|
||||
##
|
||||
{ 'command': 'add_client',
|
||||
'data': { 'protocol': 'str', 'fdname': 'str', '*skipauth': 'bool',
|
||||
'*tls': 'bool' } }
|
||||
|
||||
##
|
||||
# @NameInfo:
|
||||
#
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue