Module Luv__DNS
DNS queries.
See Querying DNS in the user guide and DNS utility functions in libuv.
This module exposes two main functions, Luv.DNS.getaddrinfo
and Luv.DNS.getnameinfo
. Both take an optional request object. By default, Luv allocates and manages request objects internally. However, a user-provided request object allows the user to cancel requests using Luv.Request.cancel
.
See Luv.File
for a similar API with more detailed discussion.
module Addr_info : sig ... end
Binds
struct addrinfo
and request objects forLuv.DNS.getaddrinfo
.
module Name_info : sig ... end
Optional flags and request objects for use with
Luv.DNS.getnameinfo
.
val getaddrinfo : ?loop:Luv.Loop.t -> ?request:Addr_info.Request.t -> ?family:Luv.Sockaddr.Address_family.t -> ?socktype:Luv.Sockaddr.Socket_type.t -> ?protocol:int -> ?flags:Addr_info.Flag.t list -> ?node:string -> ?service:string -> unit -> ((Addr_info.t list, Luv.Error.t) Result.result -> unit) -> unit
Retrieves addresses.
Binds
uv_getaddrinfo
. Seegetaddrinfo(3)
.uv_getaddrinfo
andgetaddrinfo(3)
take optional hints in fields of an argument of typestruct addrinfo
.Luv.DNS.getaddrinfo
instead has several optional arguments, each named after one of the fields ofhints
.
val getnameinfo : ?loop:Luv.Loop.t -> ?request:Name_info.Request.t -> ?flags:Name_info.Flag.t list -> Luv.Sockaddr.t -> ((string * string, Luv.Error.t) Result.result -> unit) -> unit
Retrieves host names.
Binds
uv_getnameinfo
. Seegetnameinfo(3)
.