History | View | Annotate | Download (25.6 kB)
spice: Fix unchecked strdup() by converting to g_strdup()
Signed-off-by: Markus Armbruster <armbru@redhat.com>Reviewed-by: Eric Blake <eblake@redhat.com>Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
qemu-option: move standard option definitions out of qemu-config.c
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
spice: drop incorrect vm_change_state_handler() opaque
The spice_server pointer is a global variable andvm_change_state_handler() therefore does not use its opaque parameter.
The vm change state handler is added with a pointer to the spice_serverpointer. This is useless and we probably would not want 2 levels of...
Merge remote-tracking branch 'bonzini/header-dirs' into staging
softmmu: move include files to include/sysemu/
misc: move include files to include/qemu/
monitor: move include files to include/monitor/
migration: move include files to include/migration/
qapi: move include files to include/qobject/
ui: move files to ui/ and include/ui/
spice-qemu-char: register spicevmc ports during qemu_spice_init()
Do the delayed registration of spicevmc ports after Spice server isinitialized.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
qxl+vnc: register a vm state change handler for dummy spice_server
When qxl + vnc are used, a dummy spice_server is initialized.The spice_server has to be told when the VM runstate changes,which is what this patch does.
Without it, from qxl_send_events(), the following error message is shown:...
Fix the inconsistency in x509-dh-key-file parameter
Commit c448e8552b0f6135dabddf944a7110f929c08320 (spice: tlssupport) added options to the -spice command line. But thereis an inconsistency between the declaration of the option'x509-dh-key-file' to -spice command line and its parameter...
spice: raise requirement to 0.12
With the next qemu version (1.3) we are going to bump the qxl devicerevision to 4. The new features available require a recent spice-serverversion, so raise up the bar. Otherwise we would end up with differentqxl revisions depending on the spice-server version installed, which...
spice: abort on invalid streaming cmdline params
When parsing its command line parameters, spice aborts when itfinds unexpected values, except for the 'streaming-video' option.This happens because the parsing of the parameters for this optionis done using the 'name2enum' helper, which does not error out...
spice: notify spice server on vm start/stop
Spice server needs to know about the vm state in order to preventattempts to write to devices when they are stopped, mainly duringthe non-live stage of migration.Instead, spice will take care of restoring this writes, on the migration...
spice: notify on vm state change only via spice_server_vm_start/stop
QXLWorker->start/stop are deprecated since spice-server 0.11.2
Signed-off-by: Yonit Halperin <yhalperi@redhat.com>Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
spice migration: add QEVENT_SPICE_MIGRATE_COMPLETED
When migrating, libvirt queries the migration status, and upon migrationcompletions, it closes the migration src. On the other hand, whenmigration is completed, spice transfers data from the src to destination...
spice: add 'migrated' flag to spice info
The flag is 'true' when spice migration has completed on the src side.It is needed for a case where libvirt dies before migration completesand it misses the event QEVENT_SPICE_MIGRATE_COMPLETED.When libvirt is restored and queries the migration status, it also needs...
spice: adding seamless-migration option to the command line
The seamless-migration flag is required in order to identifywhether libvirt supports the new QEVENT_SPICE_MIGRATE_COMPLETED or not(by default the flag is off).New libvirt versions that wait for QEVENT_SPICE_MIGRATE_COMPLETED should turn on this flag....
spice_info: add mouse_mode
Add mouse_mode, either server or mouse, to qmp and hmp commands, basedon spice_server_is_server_mouse added in spice-server 0.10.3.
Signed-off-by: Alon Levy <alevy@redhat.com>Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
spice: set spice uuid and name
This allows a Spice client to identify a VM
spice: fix broken initialization
Commit 1b71f7c14fab6f00c2680d4489fbee7baf796e4f moved MODULE_INIT_QOM toway before MODULE_INIT_MACHINE, thereby breaking assumptions made inspice-core.c which registered both a type initializer and a machineintializer....
spice: use error_report to report errors
Error message reporting during spice startup wasn't consistent, it was donewith fprintf(stderr, "") but sometimes the message didn't have a trailing\n. Using error_report make the intent of the message clearer and deal...
Error out when tls-channel option is used without TLS
It's currently possible to setup spice channels using TLS whenno TLS port has been specified (ie TLS is disabled). This cannotwork, so better to error out in such a situation.
qxl: require spice >= 0.8.2
drop all ifdefs on SPICE_INTERFACE_QXL_MINOR >= 1 as a result,any check for SPICE_SERVER_VERSION that is now always satisfied,and SPICE_INTERFACE_CORE_MINOR >= 3 tests, because0.8.2 has SPICE_INTERFACE_QXL_MINOR 1 andSPICE_INTERFACE_CORE_MINOR 3....
Add SPICE support to add_client monitor command
With the acceptance of some new APIs to libspice-server.so itis possible to add support for SPICE to the 'add_client'monitor command, bringing parity with VNC. Since SPICE canuse TLS or plain connections, the command also gains a new...
spice: support ipv6 channel address in monitor events and in spice info
RHBZ #788444
CC: Gerd Hoffmann <kraxel@redhat.com>
qom: Unify type registration
Replace device_init() with generalized type_init().
While at it, unify naming convention: type_init([$prefix_]register_types)Also, type_init() is a function, so add preceding blank line wherenecessary and don't put a semicolon after the closing brace....
Merge remote-tracking branch 'qmp/queue/qmp' into staging
Conflicts: ui/spice-core.c
qapi: Convert query-spice
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
ui/spice-core: fix segfault in monitor
Fix segfault if a qxl device is present but no spice command lineargument is given.
RHBZ 743251.
Signed-off-by: Alon Levy <alevy@redhat.com>
spice: fix file handle cleanup
Setting both read and write handlers to NULL in qemu_set_fd_handleris not enougth to make qemu purge the file handle from the list.We must set opaque to NULL too.
spice: turn client_migrate_info to async
RHBZ 737921Spice client is required to connect to the migration target before/as migrationstarts. Since after migration starts, the target qemu is blocked and cannot accept new spice clientwe trigger the connection to the target upon client_migrate_info command....
spice: support the new migration interface (spice 0.8.3)
- call spice_server_migrate_(start|end|connect).- register spice_migrate_connect completion callback
spice: Convert core to QEMU thread API
No need to use pthread directly, we have proper abstractions foridentity checking.
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
migration: Export a function that tells if the migration has finished correctly
This will allow us to hide the state values.
Signed-off-by: Juan Quintela <quintela@redhat.com>
spice: workaround a spice server bug.
spice server might call the channel_event callback from spice serverthread context. Detect that and aquire iothread lock if needed,
Use glib memory allocation and free functions
qemu_malloc/qemu_free no longer exist after this commit.
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
ui/spice-core: report compiled-version in info spice/query-spice
notifier: Pass data argument to callback
This allows to pass additional information to the notifier callbackwhich is useful if sender and receiver do not share any other distinctdata structure.
Will be used first for the clock reset notifier.
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>...
spice: add sanity check for spice ports
Make sure at least one port (port=.. or tls-port=...)is specified. Also apply range checks to the port numbers.
spice: catch spice server initialization failures.
When the spice server initialization fails report this and exit insteadof ignoring the error.
spice: add option for disabling copy paste support
Some people want to be able disable spice's guest <-> client copy paste supportbecause of security considerations.
[ kraxel: drop old-version error message ]
spice: add SASL support
Turn on SASL support by appending "sasl" to the spice arguments, whichrequires that the client use SASL to authenticate with the spice. Theexact choice of authentication method used is controlled from thesystem / user's SASL configuration file for the 'qemu' service. This...
spice: require spice 0.6.0 or newer.
This patch raises the minimum required spice version to 0.6.0 and dropsa few ifdefs.
0.6.0 is the first stable release with the current libspice-server API,there shouldn't be any 0.5.x development versions deployed any more....
change all rt_clock references to use millisecond resolution accessors
This was done with:
sed -i '/get_clock\>.*rt_clock/s/get_clock\>/get_clock_ms/' \ $(git grep -l 'get_clock\>.*rt_clock' ) sed -i '/new_timer\>.*rt_clock/s/new_timer\>/new_timer_ms/' \...
spice/vnc: client migration.
Handle spice client migration, i.e. inform a spice client connectedabout the new host and connection parameters, so it can move over theconnection automatically.
The monitor command has a not-yet used protocol argument simliar to...
vnc/spice: add set_passwd monitor command.
This patch adds new set_password and expire_password monitor commandswhich allows to change and expire the password for spice and vncconnections. See the doc update patch chunk for details.
spice: add qxl device
qxl is a paravirtual graphics card. The qxl device is the bridgebetween the guest and the spice server (aka libspice-server). Thespice server will send the rendering commands to the spice client, whichwill actually render them....
spice: connection events.
This patch adds support for connection events to spice. The events arequite simliar to the vnc events. Unlike vnc spice uses multiple tcpchannels though. qemu will report every single tcp connection (akaspice channel). If you want track spice sessions only you can filter...
spice: add qmp 'query-spice' and hmp 'info spice' commands.
The patch adds a 'query-spice' monitor command which returnsinformations about the spice server configuration and also a list ofchannel connections.
Merge remote branch 'spice/bugfix.2' into staging
spice: add audio
Add support for the spice audio interface. With this patch appliedaudio can be forwarded over the network from/to the spice client. Bothrecording and playback is supported.
The driver is first in the driver list, but the can_be_default flag is...
spice-core: fix warning when building with spice < 0.6.0
spice-core: fix watching for write events
spice: tls support
Add options to the -spice command line switch to setup tls.
spice: make compression configurable.
This patch adds options to the -spice command line switch toconfigure image compression.
[ v2: speling fix in the documentation ]
spice: add config options for channel security.
This allows to enforce tls or plaintext usage for certain spicechannels.
[ v2: code style fixup ]
spice: add config options for the listening address
Make listening address configurable. Also add options toforce using IPv4 or IPv6.
spice: add misc config options
This patch adds a few more options to tweak spice server behavior.The documentation update chunk has the details ;)
spice: core bits
Add -spice command line switch. Has support setting passwd and port fornow. With this patch applied the spice client can successfully connectto qemu. You can't do anything useful yet though.
spice: add keyboard
Open keyboard channel. Now you can type into the spice client and thekeyboard events are sent to your guest. You'll need some other displaylike vnc to actually see the guest responding to them though.