protocol-9p
An implementation of the 9P protocol in pure OCaml
1024" x-on:close-sidebar="sidebar=window.innerWidth > 1024 && true">
Legend:
Library
Module
Module type
Parameter
Class
Class type
Library
Module
Module type
Parameter
Class
Class type
Library protocol_9p
val extension_of_sexp : Sexplib.Sexp.t -> extension
val sexp_of_extension : extension -> Sexplib.Sexp.t
val make_extension :
?extension:string ->
?n_uid:int32 ->
?n_gid:int32 ->
?n_muid:int32 ->
unit ->
extension
type t = {
ty : int; | (* for kernel use *) |
dev : int32; | (* for kernel use *) |
qid : Qid.t; | |
mode : FileMode.t; | (* permissions and flags *) |
atime : int32; | (* last access time *) |
mtime : int32; | (* last modification time *) |
length : int64; | (* length of the file in bytes *) |
name : string; | (* file name. Must be '/' if the file is the root *) |
uid : string; | (* owner name *) |
gid : string; | (* group name *) |
muid : string; | (* name of last user who modified the file *) |
u : extension option; | (* 9P2000.u extensions *) |
}
val t_of_sexp : Sexplib.Sexp.t -> t
val sexp_of_t : t -> Sexplib.Sexp.t
val make :
name:string ->
qid:Qid.t ->
?mode:FileMode.t ->
?length:int64 ->
?atime:int32 ->
?mtime:int32 ->
?uid:string ->
?gid:string ->
?muid:string ->
?u:extension ->
unit ->
t
val sizeof : t -> int
The size of a buffer needed to hold t
val read : Cstruct.t -> ( t * Cstruct.t, [ `Msg of string ] ) Result.result
Read a t
from the given buffer and return it, along with the unused remainder of the buffer. If the buffer cannot be parsed then return an error.
val write : t -> Cstruct.t -> ( Cstruct.t, [ `Msg of string ] ) Result.result
Write a t
into the given buffer. If the buffer is too small, then return an error. Return the unused remainder of the buffer.