module Uq_ssl:sig..end
exception Ssl_error of Ssl.ssl_error
when_done callbacks to indicate an SSL-specific error codetypessl_socket_state =[ `Clean | `Client | `Server | `Unclean | `Unset ]
class type ssl_multiplex_controller =object..end
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 ->
       Unix.file_descr ->
       Ssl.context -> Unixqueue.event_system -> ssl_multiplex_controller
 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.
val ssl_connect_engine : ssl_multiplex_controller -> unit Uq_engines.engineval ssl_accept_engine : ssl_multiplex_controller -> unit Uq_engines.enginemodule Debug:sig..end