summaryrefslogblamecommitdiff
path: root/gemini/tlsUtils.mli
blob: 37f6ce53e1a409d8ed7b3a6446ddbcd036e5dc28 (plain) (tree)
1
2
3
4
5
6
7
8
9

                       
                                             
                                                 
                                     


                               
                                                  



                                            



                                                                   


                           
module type TLS_UTILS =
sig
  type authenticator = X509_lwt.authenticator
  type ciphers = Tls.Ciphersuite.ciphersuite list
  type own_cert = Tls.Config.own_cert

  val null_auth : authenticator

  val ca : Lwt_io.file_name -> authenticator Lwt.t

  val self_sign : ?bits:int -> ?days:int
    -> X509.Distinguished_name.t
    -> (Tls.Config.certchain, string) result

  val connect : authenticator:authenticator -> ?peer_name:string ->
    ?ciphers:ciphers -> ?own_cert:own_cert -> string * int
    -> (Lwt_io.input_channel * Lwt_io.output_channel) Lwt.t
end

module TlsUtils : TLS_UTILS