Mailing List Archive

[Bug 8225] New: askdns TCP fallback not working with UDP truncated TXT response
https://bz.apache.org/SpamAssassin/show_bug.cgi?id=8225

Bug ID: 8225
Summary: askdns TCP fallback not working with UDP truncated TXT
response
Product: Spamassassin
Version: SVN Trunk (Latest Devel Version)
Hardware: All
OS: All
Status: NEW
Severity: normal
Priority: P2
Component: Plugins
Assignee: dev@spamassassin.apache.org
Reporter: sidney@sidney.com
Target Milestone: Undefined

Created attachment 5940
--> https://bz.apache.org/SpamAssassin/attachment.cgi?id=5940&action=edit
Patch to t/askdns.t that adds test for this bug

This bug is being opened after bug 8213 was closed with a fix for the same
problem that only works with the SPF plugin.

Net::DNS::Resolver has automatic fallback to a TCP query retry when a response
to a UDP query indicates that the reply has been truncated due to too large a
reply packet. SpamAssassin's custom subclass Resolver never included that
feature. The problem can be seen by creating an askdns rule

I've attached a patch to t/askdns.t that creates such a rule and demonstrates
the bug.

This rule fails to match if I run it with my network DNS set to 1.1.1.1
I noticed that with my normal settings using my local gateway for DNS it only
fails sometimes, as apparently my local nameserver can cache the full response
or something like that.

If we want to fix this, we might be able to do it just for askdns by having it
use resolver->get_resolver() like we did for SPF in bug 8213, or we can try the
more general but complicated and risky fix of adding TCP fallback to our custom
Resolver code.

The reasoning for fixing only askdns is that I don't see anywhere else where
this could be a problem. I haven't checked if our DNS RBL processing makes use
of the TXT records, but even if it does those would only be short one record
reason strings.

If anyone else notices some place that large DNS replies can be a problem,
please note it here, preferably with a test case that demonstrates it.

--
You are receiving this mail because:
You are the assignee for the bug.