if(mode==EDNSStatus::NOEDNS) {
g_stats.noEdnsOutQueries++;
+ if (wantsEDNS) {
+ LOG("Remote " + ip.toString() + " does not support EDNS!");
+ }
EDNSLevel = 0; // level != mode
}
- else if(ednsMANDATORY || mode==EDNSStatus::UNKNOWN || mode==EDNSStatus::EDNSOK || mode==EDNSStatus::EDNSIGNORANT)
+ else if(mode==EDNSStatus::UNKNOWN || mode==EDNSStatus::EDNSOK || mode==EDNSStatus::EDNSIGNORANT)
EDNSLevel = 1;
- ret=asyncresolve(ip, domain, type, doTCP, sendRDQuery, EDNSLevel, now, srcmask, ctx, luaconfsLocal->outgoingProtobufServer, res);
+ DNSName sendQname(domain);
+ if (g_lowercaseOutgoing)
+ sendQname = sendQname.makeLowerCase();
+
+ ret=asyncresolve(ip, sendQname, type, doTCP, sendRDQuery, EDNSLevel, now, srcmask, ctx, luaconfsLocal->outgoingProtobufServer, res);
if(ret < 0) {
return ret; // transport error, nothing to learn here
}