[Dnsmasq-discuss] strict-order and EDNS0
Karel Bílek
kb at karelbilek.com
Thu Jul 11 10:15:53 UTC 2024
Hello.
I have a question about interaction of strict-order and EDNS0. I am looking
at dnsmasq source code and I am not sure if I read it correctly.
When I look into source code, I see this in `src/forward.c`:
```
/* Note: if we send extra options in the EDNS0 header, we can't recreate
the query from the reply. */
if ((RCODE(header) == REFUSED || RCODE(header) == SERVFAIL) &&
forward->forwardall == 0 &&
!(forward->flags & FREC_HAS_EXTRADATA))
```
Do I read it correctly, that FREC_HAS_EXTRADATA means that we added EDNS0
options; and therefore forward->flags & FREC_HAS_EXTRADATA will be true;
and therefore we don't go to the code after `if` and don't retry the query
on the next server?
So that means that we don't retry the query on the next server in the
server order in case of servfail, if the query has EDNS extra options?
Karel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.thekelleys.org.uk/pipermail/dnsmasq-discuss/attachments/20240711/16cea7b7/attachment-0001.htm>
More information about the Dnsmasq-discuss
mailing list