Flow_shutdown.MakeA Mirage FLOW over a hypervisor socket with an additional protocol layer to workaround bugs where in-flight data is lost after a shutdown_write or a close.
module Socket_family : Hvsock.Af_common.Sinclude Mirage_flow.S with type error := errorval pp_error : error Fmt.tval pp_write_error : write_error Fmt.tval write : flow -> Cstruct.t -> (unit, write_error) Stdlib.result Lwt.tval writev : flow -> Cstruct.t list -> (unit, write_error) Stdlib.result Lwt.tval shutdown : flow -> [ `read | `read_write | `write ] -> unit Lwt.tval close : flow -> unit Lwt.tmodule Socket : S.SOCKET with type sockaddr = Socket_family.sockaddr