On 11/11/2017 08:33 PM, Eric Blake wrote: > This is a minimal implementation of an NBD forwarder; it lets us > convert between old and newstyle connections (great if a client > expects one style but the real server only provides the other), > or add TLS safety on top of a server without having to rewrite > that server. Right now, the real server is expected to live > on a named Unix socket, and the transactions are serialized > rather than interleaved; further enhancements could be made to > also permit TCP servers or more efficient transmission. > > I also envision the possibility of enhancing our testsuite to > use NBD forwarding as a great test of our server. > > Signed-off-by: Eric Blake <ebl...@redhat.com> >
> + > +/* Free up the per-connection handle. */ > +static void > +nbd_close (void *handle) > +{ > + struct handle *h = handle; > + > + close (h->fd); > + free (h); > +} Oh, I just realized: prior to dropping the socket, this should do: if (!h->dead) nbd_request (h, NBD_CMD_DISC, 0, 0, &cookie); to let the real server get a cleaner shutdown. -- Eric Blake, Principal Software Engineer Red Hat, Inc. +1-919-301-3266 Virtualization: qemu.org | libvirt.org
signature.asc
Description: OpenPGP digital signature
_______________________________________________ Libguestfs mailing list Libguestfs@redhat.com https://www.redhat.com/mailman/listinfo/libguestfs