Phil Pennock wrote on 2020-03-13 22:00:
On 2020-03-13 at 21:07 -0700, Paul Vixie wrote:
the concatenation of <character-strings> on 255-octet boundaries has never
been specified in a DNS RFC, and if the DKIM and SPF specifications require
this, they are legislating from the bench.
Isn't that one of the points of DNS: that semantics should be laid on by
applications above it, while RFC 2181 keeps the DNS itself much more
agnostic about such matters?
it is not, in two ways.
first, the semantic described for these strings is not an example of how
applications are expected to layer on their own interpretation. while
this could certainly be done for the SPF record, as it was for MX and
SRV and dozens of others, TXT already had some rules.
second, they did not lay this semantic on, they referred to the practice
of splitting text strings into 255-octet chunks and claimed that because
of this practice they were going to assume that if multiple chunks were
present they must have been split from some larger string.
...
I've successfully pushed back against DNS tooling behavior which says
"just join TXT strings together" and persuaded folks that this is
application specific, with that being one common behavior which it's
good to support. In Exim's case, in those cases where folks have to
manually code DNS lookups with `${dnsdb ...}`, the TXT handling
explicitly allows for specifying how results from multiple strings, and
multiple records, should be handled.
thank you for that. i think more work will be needed for DKIM and SPF
applications who depend on the TXT record, but your approach illuminates
that work.
specifically, if a consumer of DKIM or SPF sees multiple text segments
which are not meaningful (contain no known keywords, have the wrong
number of fields, or whatever) they should try again assuming that each
segment is a word and that they are separated by whitespace. if the
second interpretation results in meaning, it should be treated as success.
or else, only if the segment is the maximum size permitted by TXT RDATA
formatting, should it be presumed to have been split from a larger string.
or both.
--
P Vixie
_______________________________________________
dns-operations mailing list
[email protected]
https://lists.dns-oarc.net/mailman/listinfo/dns-operations