Hi, Here is a proof of concept patch series implementing a NBD channel, to allow mounting block devices from a Spice client, such as ISO images for cdrom drives. There are very few Spice specific protocol changes, since the protocol is handled mostly by NBD. The protocol to allow switching block devices is described in the spice.proto RFC patch. Marc-André Lureau (5): coroutine: fix current coroutine Add simple NBD server library Add SpiceVMC GIOStream Add NBD channel Teach spicy to use a NBD channel configure.ac | 1 + doc/reference/spice-gtk-docs.xml | 1 + doc/reference/spice-gtk-sections.txt | 18 + doc/reference/spice-gtk.types | 3 +- gtk/Makefile.am | 20 +- gtk/channel-base.c | 48 ++ gtk/channel-nbd.c | 425 ++++++++++++++++++ gtk/channel-nbd.h | 88 ++++ gtk/channel-port.c | 33 +- gtk/coroutine_ucontext.c | 2 +- gtk/map-file | 5 + gtk/nbd/Makefile.am | 46 ++ gtk/nbd/nbd-enums.c.etemplate | 55 +++ gtk/nbd/nbd-enums.h.etemplate | 36 ++ gtk/nbd/nbd-export.c | 423 ++++++++++++++++++ gtk/nbd/nbd-export.h | 65 +++ gtk/nbd/nbd-priv.h | 84 ++++ gtk/nbd/nbd-server-session.c | 837 +++++++++++++++++++++++++++++++++++ gtk/nbd/nbd-server-session.h | 56 +++ gtk/nbd/nbd-server.c | 108 +++++ gtk/nbd/nbd-server.h | 45 ++ gtk/nbd/nbd.c | 25 ++ gtk/nbd/nbd.h | 47 ++ gtk/spice-channel-priv.h | 8 + gtk/spice-channel.c | 6 + gtk/spice-client.h | 1 + gtk/spice-glib-sym-file | 4 + gtk/spicy.c | 102 ++++- gtk/vmcstream.c | 436 ++++++++++++++++++ gtk/vmcstream.h | 69 +++ 30 files changed, 3055 insertions(+), 42 deletions(-) create mode 100644 gtk/channel-nbd.c create mode 100644 gtk/channel-nbd.h create mode 100644 gtk/nbd/Makefile.am create mode 100644 gtk/nbd/nbd-enums.c.etemplate create mode 100644 gtk/nbd/nbd-enums.h.etemplate create mode 100644 gtk/nbd/nbd-export.c create mode 100644 gtk/nbd/nbd-export.h create mode 100644 gtk/nbd/nbd-priv.h create mode 100644 gtk/nbd/nbd-server-session.c create mode 100644 gtk/nbd/nbd-server-session.h create mode 100644 gtk/nbd/nbd-server.c create mode 100644 gtk/nbd/nbd-server.h create mode 100644 gtk/nbd/nbd.c create mode 100644 gtk/nbd/nbd.h create mode 100644 gtk/vmcstream.c create mode 100644 gtk/vmcstream.h -- 1.8.3.rc1.49.g8d97506 _______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/spice-devel