]> xenbits.xensource.com Git - libvirt.git/commit
remote_driver: Implement virStreamInData() callback
authorMichal Privoznik <mprivozn@redhat.com>
Mon, 6 Dec 2021 16:16:09 +0000 (17:16 +0100)
committerMichal Privoznik <mprivozn@redhat.com>
Mon, 13 Dec 2021 13:49:02 +0000 (14:49 +0100)
commitc1b06f5cf04db672e4754c8f57a636dc4ab562c5
tree1115484a1986a79d131b5946b713d45301adc003
parent2981d1c95ea43c4c71237b7dec1ad70e08250435
remote_driver: Implement virStreamInData() callback

When using the monolithic daemon the driver for virStream is
always virFDStreamDrv and thus calling virStreamInData() results
in calling virFDStreamInData().

But things are different with split daemon, especially when a
client connects to one of hypervisor daemons (e.g. virtqemud) and
then lets the daemon connect to the storage daemon for
vol-upload/vol-download. Here, the hypervisor daemon acts like
both client and server. This is reflected by stream->driver
pointing to remoteStreamDrv, which doesn't have streamInData
callback implemented and thus vol-upload/vol-download with sparse
flag fails.

Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=2026537
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
src/remote/remote_driver.c