Types.Stat
val sexp_of_extension : extension -> Ppx_sexp_conv_lib.Sexp.t
val extension_of_sexp : Ppx_sexp_conv_lib.Sexp.t -> extension
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 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 ]) Stdlib.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 ]) Stdlib.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.