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 flow = Unix_flow.flow
A bi-directional byte-stream.
module Network : sig ... end
A network using TCP and Unix-domain sockets.
module CapTP : sig ... end
Sharing capabilities over a network link.
module Vat : sig ... end
A Vat is an actor in the CapTP network, composed of objects that can call each other directly.
module Vat_config : sig ... end
Configuration for a Vat
.
module File_store : sig ... end
An on-disk store for saved services.
module Cap_file : sig ... end
Utilities for capability files.
A cmdliner argument converter for a "capnp://" URI (or the path of a file containing such a URI).
val connect_with_progress :
?mode:[ `Auto | `Log | `Batch | `Console | `Silent ] ->
'a Capnp_rpc_lwt.Sturdy_ref.t ->
('a Capnp_rpc_lwt.Capability.t, Capnp_rpc.Exception.t) Lwt_result.t
connect_with_progress sr
is like Sturdy_ref.connect
, but shows that a connection is in progress. Note: On failure, it does not display the error, which should instead be handled by the caller.
val with_cap_exn :
?progress:[ `Auto | `Log | `Batch | `Console | `Silent ] ->
'a Capnp_rpc_lwt.Sturdy_ref.t ->
('a Capnp_rpc_lwt.Capability.t -> 'b Lwt.t) ->
'b Lwt.t
Like Sturdy_ref.with_cap_exn
, but using connect_with_progress
to show progress.
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.