On Thu, Mar 21, 2013 at 2:38 PM, Richard W.M. Jones <rjo...@redhat.com> wrote: > From: "Richard W.M. Jones" <rjo...@redhat.com> > > qemu-system-x86_64 -drive file=ssh://hostname/some/image > > QEMU will ssh into 'hostname' and open '/some/image' which is made > available as a standard block device. > > You can specify a username (ssh://user@host/...) and/or a port number > (ssh://host:port/...). > > Current limitations: > > - Authentication must be done without passwords or passphrases, using > ssh-agent. Other authentication methods are not supported. (*) > > - Does not check host key. (*) > > - New remote files cannot be created. (*) > > - Uses coroutine read/write, instead of true AIO. (libssh2 supports > non-blocking access, so this could be fixed with some effort). > > - Blocks during connection and authentication. > > (*) = potentially easy fix > > This is implemented using libssh2 on the client side. The server just > requires a regular ssh daemon with sftp-server support. Most ssh > daemons on Unix/Linux systems will work out of the box. > --- > block/Makefile.objs | 1 + > block/ssh.c | 514 > ++++++++++++++++++++++++++++++++++++++++++++++++++++ > configure | 47 +++++ > qemu-doc.texi | 28 +++ > 4 files changed, 590 insertions(+) > create mode 100644 block/ssh.c
Just noticed that libcurl supports sftp. Did you try enabling sftp support in block/curl.c? I think you just need to add CURLPROTO_SFTP to #define PROTOCOLS. Stefan