# Module Lwt_ssl

    module Lwt_ssl: sig .. end

OCaml-SSL integration

    type socket

Wrapper for SSL sockets.

It is either a plain socket, either a real SSL socket.

    val ssl_socket : socket -> Ssl.socket option

Returns the underlying SSL socket used for this wrapper. If it is a plain socket it returns `None`.

    val ssl_accept : Lwt_unix.file_descr -> Ssl.context -> socket Lwt.t

    val ssl_connect : Lwt_unix.file_descr -> Ssl.context -> socket Lwt.t

    val plain : Lwt_unix.file_descr -> socket

    val embed_socket : Lwt_unix.file_descr -> Ssl.context -> socket

    val read : socket -> string -> int -> int -> int Lwt.t

    val write : socket -> string -> int -> int -> int Lwt.t

    val read_bytes : socket -> Lwt_bytes.t -> int -> int -> int Lwt.t

    val write_bytes : socket -> Lwt_bytes.t -> int -> int -> int Lwt.t

    val wait_read : socket -> unit Lwt.t

    val wait_write : socket -> unit Lwt.t

    val shutdown : socket -> Unix.shutdown_command -> unit

    val close : socket -> unit Lwt.t

    val out_channel_of_descr : socket -> Lwt_chan.out_channel

    val in_channel_of_descr : socket -> Lwt_chan.in_channel

    val ssl_shutdown : socket -> unit Lwt.t

    val abort : socket -> exn -> unit

    val is_ssl : socket -> bool

Are we using an SSL socket?

    val getsockname : socket -> Unix.sockaddr

    val getpeername : socket -> Unix.sockaddr