666. [bug] If a request is longer than 512 bytes, send it using

TCP.
This commit is contained in:
Brian Wellington
2001-01-08 20:50:04 +00:00
parent fff07c1022
commit 9b0e404e5f
2 changed files with 10 additions and 1 deletions

View File

@@ -1,3 +1,6 @@
666. [bug] If a request is longer than 512 bytes, send it using
TCP.
665. [bug] Signed responses were not sent when the size of the
TSIG + question exceeded the maximum message size.
[RT #628]

View File

@@ -15,7 +15,7 @@
* WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/* $Id: dighost.c,v 1.176 2001/01/08 19:50:32 bwelling Exp $ */
/* $Id: dighost.c,v 1.177 2001/01/08 20:50:04 bwelling Exp $ */
/*
* Notice to programmers: Do not use this code as an example of how to
@@ -1522,6 +1522,12 @@ setup_lookup(dig_lookup_t *lookup) {
check_result(result, "dns_message_renderend");
debug("done rendering");
/*
* Force TCP mode if the request is larger than 512 bytes.
*/
if (isc_buffer_usedlength(&lookup->sendbuf) > 512)
lookup->tcp_mode = ISC_TRUE;
lookup->pending = ISC_FALSE;
for (serv = ISC_LIST_HEAD(lookup->my_server_list);