Up
module
Dns_server
:
sig
#
type
ip_endpoint =
Ipaddr
.
t
* int
#
type
'a process = src:
ip_endpoint
->
dst:
ip_endpoint
->
'a
->
Dns.Query.answer option
Lwt
.
t
#
module type
PROCESSOR =
sig
include
Dns.Protocol.SERVER
#
val
process :
context
process
DNS responder function.
src
Server sockaddr
dst
Client sockaddr
Query
packet
Returns
Answer packet
end
#
type
'a processor = (
module
PROCESSOR
with
type
context = 'a)
#
val
process_query : Dns.Buf.t
->
int
->
Dns.Buf.t
->
ip_endpoint
->
ip_endpoint
->
(
module
PROCESSOR
)
->
Dns.Buf.t option
Lwt
.
t
process_query ibuf ibuflen obuf src dst processor
#
val
processor_of_process : Dns.Packet.t
process
->
Dns.Packet.t
processor
#
val
process_of_zonebufs : string list
->
Dns.Packet.t
process
#
val
process_of_zonebuf : string
->
Dns.Packet.t
process
end