qemu-e2k/qga
Tomoki Sekiyama ff8adbcfdb qga: vss-win32: Fix interference with snapshot creation by other VSS requesters
When a VSS requester such as vshadow.exe or diskshadow.exe requests to
create disk snapshots, Windows may choose qemu-ga VSS provider if it is
only provider registered on the system. However, because it provides only a
function to freeze the filesystem, the snapshotting fails.

This patch adds a check into CQGAVssProvider::IsVolumeSupported() to reject
the request from other VSS requesters, so that the other provider is chosen.

The check of requester is done by confirming event channels between
qemu-ga's requester and provider established. To ensure that the events are
initialized when CQGAVssProvider::IsVolumeSupported() is called, it moves
the initialization earlier.

Signed-off-by: Tomoki Sekiyama <tomoki.sekiyama@hds.com>
Reviewed-by: Gal Hammer <ghammer@redhat.com>
Reviewed-by: Yan Vugenfirer <yvugenfi@redhat.com>
Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
2014-02-23 13:11:26 -06:00
..
vss-win32 qga: vss-win32: Fix interference with snapshot creation by other VSS requesters 2014-02-23 13:11:26 -06:00
channel-posix.c qemu-ga: Handle errors uniformely in ga_channel_open() 2013-01-14 12:08:05 -06:00
channel-win32.c remove double semicolons 2013-05-12 13:25:55 +04:00
channel.h qemu-ga: move channel/transport functionality into wrapper class 2012-02-23 15:40:16 -06:00
commands-posix.c Use error_is_set() only when necessary 2014-02-17 11:57:23 -05:00
commands-win32.c Use error_is_set() only when necessary 2014-02-17 11:57:23 -05:00
commands.c qemu-ga: Extend 'guest-info' command to expose flag 'success-response' 2013-10-10 14:52:37 -05:00
guest-agent-command-state.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
guest-agent-core.h qga: Fix compiler warnings (missing format attribute, wrong format strings) 2013-11-21 17:39:25 +01:00
main.c qemu-ga: Add interface to traverse the qmp command list by QmpCommand 2013-10-10 14:52:37 -05:00
Makefile.objs qemu-ga: Call Windows VSS requester in fsfreeze command handler 2013-09-09 14:17:57 -05:00
qapi-schema.json qemu-ga: Extend 'guest-info' command to expose flag 'success-response' 2013-10-10 14:52:37 -05:00
service-win32.c qga: escape cmdline args when registering win32 service (CVE-2013-2231) 2013-07-25 14:49:04 -05:00
service-win32.h qga: save state directory in ga_install_service() 2013-05-30 11:37:37 -05:00
vss-win32.c qemu-ga: Install Windows VSS provider on `qemu-ga -s install' 2013-09-09 14:17:57 -05:00
vss-win32.h qemu-ga: Install Windows VSS provider on `qemu-ga -s install' 2013-09-09 14:17:57 -05:00