Module Capnp_rpc_unix

Helpers for using Capnp_rpc_lwt on traditional operating systems.

module Unix_flow : sig ... end

Wraps a Unix file_descr to provide the Mirage flow API.

include Capnp_rpc_net.VAT_NETWORK with type flow = Unix_flow.flow and module Network = Network
type +'a capability

An 'a capability is a capability reference to a service of type 'a.

type flow = Unix_flow.flow

A bi-directional byte-stream.

type restorer

A function for restoring persistent capabilities from sturdy ref service IDs.

type +'a sturdy_ref

An off-line (persistent) capability.

type service_id

A (secret) token that identifies a persistent service within a vat and grants access to it.

module Network : sig ... end

A network using TCP and Unix-domain sockets.

module CapTP : sig ... end
module Vat : sig ... end
module Vat_config : sig ... end
module File_store : sig ... end
module Cap_file : sig ... end
val sturdy_uri : Uri.t Cmdliner.Arg.conv

A cmdliner argument converter for a "capnp://" URI (or the path of a file containing such a URI).

val serve : ?⁠switch:Lwt_switch.t -> ?⁠tags:Logs.Tag.set -> ?⁠restore:Capnp_rpc_net.Restorer.t -> Vat_config.t -> Vat.t Lwt.t

serve ~restore vat_config is a new vat that is listening for new connections as specified by vat_config. After connecting to it, clients can get access to services using restore.

val client_only_vat : ?⁠switch:Lwt_switch.t -> ?⁠tags:Logs.Tag.set -> ?⁠restore:Capnp_rpc_net.Restorer.t -> unit -> Vat.t

client_only_vat () is a new vat that does not listen for incoming connections.

val manpage_capnp_options : string

manpage_capnp_options is the title of the section of the man-page containing the Cap'n Proto options. This can be used to control where these options appear in the page (e.g. to put them below the other options).