hannesm · GitHub

added 4 commits

October 6, 2022 14:05
This adds support for either all udp or all tcp|tls resolvers. At a later stage,
we can of course support mixed sets of resolvers (especially with the previous
commit paving this path).
…e.connect
This avoids the need to unmarshal the arguments for a Dns_stub.t instantiation,
and makes the surface more uniform.

hannesm

similar to qubes-mirage-firewall (thanks @palainp), at initialization time a
single udp_port is reserved as last resort.
In general, the UDP source port is randomized, and UDP.listen/unlisten are
executed on that port (which is as well registered / unregistered). If the port
allocation fails, the last_udp_port is used, which is always listened to.

@hannesm

reynir

Co-authored-by: Reynir Björnsson <reynir@reynir.dk>
Co-authored-by: Reynir Björnsson <reynir@reynir.dk>

@hannesm

…gth was received (as reviewed by @reynir)
…nt module

Open

previously, the source port of the remote (usually 53) was checked against our
source port (some random ephemeral), leading to no accepted reply. the mirage
udp interface does not provide the destination port in the callback (report as
mirage/mirage-tcpip#497).

reynir

… no free port

@reynir

@hannesm

@hannesm

Merged

hannesm added a commit to hannesm/opam-repository that referenced this pull request

Oct 24, 2022

Read the original on github.com ↗