cli: add stub support for streaming a disk using output protocol 'tar'

This will be compatible with the XenServer VM import/export format.

Signed-off-by: David Scott <dave.scott@eu.citrix.com>
Add basic documentation for the XenServer tar format.

Signed-off-by: David Scott <dave.scott@eu.citrix.com>
cli: streaming: move some of the input validation to streamCommon.ml

Signed-off-by: David Scott <dave.scott@eu.citrix.com>
cli: tar: prototype writing in XenServer tar/sha format

Signed-off-by: David Scott <dave.scott@eu.citrix.com>
Register Tar as a possible_protocol everyhere

Signed-off-by: David Scott <dave.scott@eu.citrix.com>
cli: tar: now outputs a tar stream with the correct format

Signed-off-by: David Scott <dave.scott@eu.citrix.com>
cli: tar: allow the disk chunk prefix to be set

Using the commandline --tar-filename-prefix

Signed-off-by: David Scott <dave.scott@eu.citrix.com>
Incremental commit

Signed-off-by: David Scott <dave.scott@eu.citrix.com>
Tar streaming code now compiles

Signed-off-by: David Scott <dave.scott@eu.citrix.com>
vhd-tool: create the destination file if it doesn't exist

Signed-off-by: David Scott <dave.scott@eu.citrix.com>
vhd-tool serve: --source-protocol=tar seems to work

Signed-off-by: David Scott <dave.scott@eu.citrix.com>
vhd-tool serve: support a --progress option

Plus summarise the work done at the end.

Signed-off-by: David Scott <dave.scott@eu.citrix.com>
vhd-tool: when summarising progress, use nice units

Signed-off-by: David Scott <dave.scott@eu.citrix.com>
vhd-tool serve: accept --tar-filename-prefix argument

Signed-off-by: David Scott <dave.scott@eu.citrix.com>
vhd-tool serve: to reduce CPU usage, support the option --ignore-checksums

Signed-off-by: David Scott <dave.scott@eu.citrix.com>
If the '--machine' '--progress' args are given, emit progress in a machine-readable format

Signed-off-by: David Scott <dave.scott@eu.citrix.com>
serve, stream: add -destination-fd argument

This makes it easier for xapi to call using the remote fork/exec
interface.

Signed-off-by: David Scott <dave.scott@eu.citrix.com>
vhd-tool: fix the .vhd search path (like sparse_dd)

also fix support for -destination-fd

Signed-off-by: David Scott <dave.scott@eu.citrix.com>