Plasma GitLab Archive
Projects Blog Knowledge

Module Uq_ssl

module Uq_ssl: sig .. end
Asynchronous SSL connections

exception Ssl_error of Ssl.ssl_error
Used in when_done callbacks to indicate an SSL-specific error code
type ssl_socket_state = [ `Clean | `Client | `Server | `Unclean | `Unset ] 
class type ssl_multiplex_controller = object .. end
The ssl_multiplex_controller is an extended multiplex controller which can also control SSL handshakes.
val create_ssl_multiplex_controller : ?close_inactive_descr:bool ->
?preclose:(unit -> unit) ->
?initial_state:ssl_socket_state ->
?timeout:float * exn ->
?ssl_socket:Ssl.socket ->
Unix.file_descr ->
Ssl.context -> Unixqueue.event_system -> ssl_multiplex_controller
Creates a multiplex controller for an SSL socket. The descriptor must be a connected socket descriptor.

close_inactive_descr: Whether to close the file descriptor by inactivate.

preclose: This function is called immediately before closing the descriptor

initial_state: can be set to `Client or `Server if the context is already established. Defaults to `Unset

timeout: if set to (t, x), started operations time out after t seconds and pass the exception x back. A timeout is only indicated when all started operations are inactive for t seconds.

ssl_socket: If passed, this socket is used instead of creating a new one for the file descriptor. It is required that the descriptor and the SSL context are connected with this SSL socket.

val ssl_connect_engine : ssl_multiplex_controller -> unit Uq_engines.engine
This engine performs the client handshake.
val ssl_accept_engine : ssl_multiplex_controller -> unit Uq_engines.engine
This engine performs the server handshake.


module Debug: sig .. end
This web site is published by Informatikbüro Gerd Stolpmann
Powered by Caml