sig
type channel_binding_id = int
type inactive_data = {
conn_cb : Http_client_conncache.channel_binding_id;
tls_stashed_endpoint : exn option;
}
type conn_state =
[ `Active of < > | `Inactive of Http_client_conncache.inactive_data ]
type peer =
[ `Direct of string * int
| `Direct_name of string * int
| `Http_proxy of string * int
| `Http_proxy_connect of (string * int) * (string * int)
| `Socks5 of (string * int) * (string * int) ]
class type connection_cache =
object
method close_all : unit -> unit
method close_connection : Unix.file_descr -> unit
method find_inactive_connection :
Http_client_conncache.peer ->
Http_client_conncache.channel_binding_id ->
Unix.file_descr * Http_client_conncache.inactive_data
method find_my_connections : < > -> Unix.file_descr list
method get_connection_state :
Unix.file_descr -> Http_client_conncache.conn_state
method set_connection_state :
Unix.file_descr ->
Http_client_conncache.peer ->
Http_client_conncache.conn_state -> unit
end
class restrictive_cache : unit -> connection_cache
class aggressive_cache : unit -> connection_cache
end