package awa-lwt

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
type nexus_msg =
  1. | Rekey
  2. | Net_eof
  3. | Net_io of Cstruct.t
  4. | Sshout of int32 * Cstruct.t
  5. | Ssherr of int32 * Cstruct.t
type sshin_msg = [
  1. | `Data of Cstruct.t
  2. | `Eof
]
type channel = {
  1. cmd : string;
  2. id : int32;
  3. sshin_mbox : sshin_msg Lwt_mvar.t;
  4. exec_thread : unit Lwt.t;
}
type exec_callback = string -> (unit -> sshin_msg Lwt.t) -> (Cstruct.t -> unit Lwt.t) -> (Cstruct.t -> unit Lwt.t) -> unit Lwt.t
type t = {
  1. exec_callback : exec_callback;
  2. channels : channel list;
  3. nexus_mbox : nexus_msg Lwt_mvar.t;
}
val wrapr : ('a, string) Stdlib.result -> 'a Lwt.t
val send_msg : Lwt_unix.file_descr -> Awa.Server.t -> Awa.Ssh.message -> Awa.Server.t Lwt.t
val send_msgs : Lwt_unix.file_descr -> Awa.Server.t -> Awa.Ssh.message list -> Awa.Server.t Lwt.t
val net_read : Lwt_unix.file_descr -> nexus_msg Lwt.t
val sshin_eof : channel -> unit Lwt.t
val sshin_data : channel -> Cstruct.t -> unit Lwt.t
val lookup_channel : t -> int32 -> channel option
val nexus : t -> Lwt_unix.file_descr -> Awa.Server.t -> Cstruct.t -> t Lwt.t
val spawn_server : Awa.Server.t -> Awa.Ssh.message list -> Lwt_unix.file_descr -> exec_callback -> t Lwt.t
OCaml

Innovation. Community. Security.