Legend:
Library
Module
Module type
Parameter
Class
Class type
Library
Module
Module type
Parameter
Class
Class type
The functions in this module are mapped directly onto individual 9P RPCs. The client must carefully respect the rules on managing fids and stay within the message size limits.
val maximum_write_payload : t -> int32
The largest payload that can be written in one go.
val allocate_fid : t -> Protocol_9p_types.Fid.t Protocol_9p_error.t Lwt.t
allocate_fid t
returns a free fid. Callers must call deallocate_fid t
when they are finished with it.
val deallocate_fid : t -> Protocol_9p_types.Fid.t -> unit Lwt.t
deallocate_fid t fid
clunks a fid and marks it as free for re-use.
val walk :
t ->
Protocol_9p_types.Fid.t ->
Protocol_9p_types.Fid.t ->
string list ->
Protocol_9p_response.Walk.t Protocol_9p_error.t Lwt.t
walk t fid newfid wnames
binds newfid
to the result of Walking from fid
along the path given by wnames
val openfid :
t ->
Protocol_9p_types.Fid.t ->
Protocol_9p_types.OpenMode.t ->
Protocol_9p_response.Open.t Protocol_9p_error.t Lwt.t
open t fid mode
confirms that fid
can be accessed according to mode
val create :
t ->
Protocol_9p_types.Fid.t ->
?extension:string ->
string ->
Protocol_9p_types.FileMode.t ->
Protocol_9p_types.OpenMode.t ->
Protocol_9p_response.Create.t Protocol_9p_error.t Lwt.t
create t fid name perm mode
creates a new file or directory called name
and with permissions perm
inside the directory fid
and opens it according to mode
(which is not checked against perm
).
val stat :
t ->
Protocol_9p_types.Fid.t ->
Protocol_9p_response.Stat.t Protocol_9p_error.t Lwt.t
stat t fid
returns a description of the file associated with fid
val wstat :
t ->
Protocol_9p_types.Fid.t ->
Protocol_9p_types.Stat.t ->
Protocol_9p_response.Wstat.t Protocol_9p_error.t Lwt.t
wstat t fid stat
changes the file metadata according to stat
.
val read :
t ->
Protocol_9p_types.Fid.t ->
int64 ->
int32 ->
Protocol_9p_response.Read.t Protocol_9p_error.t Lwt.t
read t fid offset count
returns count
bytes of data at offset
in the file referenced by pid
. Note that count
must be less than the server's negotiated maximum message size.
val write :
t ->
Protocol_9p_types.Fid.t ->
int64 ->
Cstruct.t ->
Protocol_9p_response.Write.t Protocol_9p_error.t Lwt.t
write t fid offset data
writes data
to the file given by fid
at offset offset
. data
must not exceed maximum_write_payload t
.
val clunk :
t ->
Protocol_9p_types.Fid.t ->
Protocol_9p_response.Clunk.t Protocol_9p_error.t Lwt.t
clunk t fid
informs the server that the reference fid
should be forgotten about. When this call returns, it is safe for the client to re-use the fid.
val remove :
t ->
Protocol_9p_types.Fid.t ->
Protocol_9p_response.Remove.t Protocol_9p_error.t Lwt.t
remove t fid
removes the file associated with fid
from the file server. The server will "clunk" the fid whether the call succeeds or fails.
val update :
t ->
?name:string ->
?length:int64 ->
?mode:Protocol_9p_types.FileMode.t ->
?mtime:int32 ->
?gid:string ->
Protocol_9p_types.Fid.t ->
unit Protocol_9p_error.t Lwt.t
Convenience wrapper around wstat
.