Ticket #164 (closed defect: wontfix)

Opened 6 years ago

Last modified 5 years ago

PowerDNS sends two TCP packets when it only needs to send one.

Reported by: anon Owned by: somebody
Priority: normal Milestone:
Component: component1 Version:
Severity: normal Keywords:
Cc: augie.schwer@…

Description

When replying to TCP queries PowerDNS sends two packets (one with the size of the data it is about to send and the second with the actual data).

This behavior can confuse stupid clients (Like Alteons) that are expecting one packet to contain both answer and size of answer.

There are probably efficiency concerns with sending twice as many packets as needed, especially sending such a small packet for just the data size.

tcpreceiver.cc

void TCPNameserver::sendPacket(shared_ptr<DNSPacket> p, int outsock) {

const char *buf=p->getData(); uint16_t len=htons(p->len); writenWithTimeout(outsock, &len, 2); writenWithTimeout(outsock, buf, p->len);

}

Change History

Changed 5 years ago by ahu

  • status changed from new to closed
  • resolution set to wontfix

Fix the Alteon or send cash. I seriously can't be bothered to fix this otherwise.

Note: See TracTickets for help on using tickets.