Module Resolver_lwt_unix

Resolve URIs to endpoints using Unix system calls

Prebuilt resolvers

val system : Resolver_lwt.t

Use the Unix system name resolver via getaddrinfo and getservbyname

val static : (string, Conduit.endp) Stdlib.Hashtbl.t -> Resolver_lwt.t

static hosts constructs a resolver that looks up any resolution requests from the static hosts hashtable instead of using the system resolver.

Rewrite and service functions

These can be used to assemble your own resolvers if the prebuilt ones are not quite what you need.

val system_service : string -> Resolver_lwt.svc option Lwt.t

Perform service lookup using getservbyname

val static_service : string -> Resolver_lwt.svc option Lwt.t

Perform service lookup using the builtin Uri_services module

val system_resolver : Resolver_lwt.rewrite_fn

Rewrite function that uses the system_service and static_service to resolve hosts

Debugging Hooks

val debug : bool Stdlib.ref

If debug is true, the builtin resolvers will output their resolution responses via the debug_print function. The default value of debug is true if the CONDUIT_DEBUG environment variable is set, and false otherwise.

val debug_print : ((string -> string -> string -> string -> unit, Stdlib.out_channel, unit) Stdlib.format -> string -> string -> string -> string -> unit) Stdlib.ref

debug_print is called by the debug functions to output the results of resolution. Defaults to Printf.eprintf to go to the standard error.