This patch series introduces two new APIs to allow data upload/download
to/from storage volumes, using the streams APIs. Mostly I wrote this so
I had an easier way to test the streams handling in my RPC patch series
than using QEMU tunnelled migration code. Cole has expressed an interest
in this kind of functionality in the past to allow virt-manager to upload
kernel/initrd to remote hosts for provisioning guests.
Most of the code here is pretty boring & trivial. The first patch is the
one that is remotely interesting. One might argue we should just spawn
'dd' instead of this, but dd has some annoying aspects (you can't control
its write offset in units smaller than the block size) and this could be
useful more broadly.