virshStreamInData: Handle block devices
virshStreamInData: Handle block devices

This is very similar to previous commit.

The virshStreamInData() callback is used by virStreamSparseSendAll()
to detect whether the file the data is read from is in data or hole
section. The SendAll() will then send corresponding type of virStream
message to make server create a hole or write actual data. But the
callback uses virFileInData() even for block devices, which results in
an error. Just like in previous commit, emulate a DATA section
for block devices.

Partially resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1852528

Signed-off-by: Michal Privoznik <83d82aaba2eed257f4814b0c239c260c4caaadf0@redhat.com>
Reviewed-by: Peter Krempa <2cf5c04c61aa466e4a47bfedc747d17279c72ffc@redhat.com>

jardasgit/libvirt,olafhering/libvirt,zippy2/libvirt,jardasgit/libvirt,crobinso/libvirt,olafhering/libvirt,olafhering/libvirt,jfehlig/libvirt,libvirt/libvirt,zippy2/libvirt,libvirt/libvirt,libvirt/libvirt,olafhering/libvirt,jfehlig/libvirt,crobinso/libvirt,jfehlig/libvirt,zippy2/libvirt,jardasgit/libvirt,nertpinx/libvirt,nertpinx/libvirt,nertpinx/libvirt,jfehlig/libvirt,nertpinx/libvirt,zippy2/libvirt,jardasgit/libvirt,libvirt/libvirt,jardasgit/libvirt,crobinso/libvirt,crobinso/libvirt,nertpinx/libvirt