]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
nsupdate: use the configurable timeout and retry values for all queries
authorAram Sargsyan <aram@isc.org>
Wed, 28 Dec 2022 10:20:37 +0000 (10:20 +0000)
committerAram Sargsyan <aram@isc.org>
Mon, 3 Apr 2023 16:18:39 +0000 (16:18 +0000)
The 'nsupdate' tool, when sending SOA queries, uses a hard-coded value
3 UDP retries and of 5 seconds of timeout for UDP queries, and 100
seconds of timeout for TCP queries.

Use the timeout and retry values which can be configured using the
-t, -u, -r command line options, and which are already used for
sending the update query.

(cherry picked from commit 3ef2a30c75072d8f677c619bc12814d9219014c3)

bin/nsupdate/nsupdate.c

index 0d0f115e2646e90ad8ad603f5953a87d28955453..7d52ecfdc790186859cf3c8ea6d445fec12bdacb 100644 (file)
 
 #include "../dig/readline.h"
 
-#define MAXCMD      (128 * 1024)
-#define MAXWIRE             (64 * 1024)
-#define INITTEXT     (2 * 1024)
-#define MAXTEXT             (128 * 1024)
-#define FIND_TIMEOUT 5
-#define TTL_MAX             2147483647U /* Maximum signed 32 bit integer. */
+#define MAXCMD  (128 * 1024)
+#define MAXWIRE         (64 * 1024)
+#define INITTEXT (2 * 1024)
+#define MAXTEXT         (128 * 1024)
+#define TTL_MAX         2147483647U /* Maximum signed 32 bit integer. */
 
 #define DNSDEFAULTPORT 53
 
@@ -2611,9 +2610,9 @@ recvsoa(isc_task_t *task, isc_event_t *event) {
                }
 
                result = dns_request_create(requestmgr, soaquery, srcaddr, addr,
-                                           0, NULL, FIND_TIMEOUT * 20,
-                                           FIND_TIMEOUT, 3, global_task,
-                                           recvsoa, reqinfo, &request);
+                                           0, NULL, timeout, udp_timeout,
+                                           udp_retries, global_task, recvsoa,
+                                           reqinfo, &request);
                check_result(result, "dns_request_create");
                requests++;
                return;
@@ -2838,9 +2837,9 @@ sendrequest(isc_sockaddr_t *destaddr, dns_message_t *msg,
        }
 
        result = dns_request_create(requestmgr, msg, srcaddr, destaddr, 0,
-                                   default_servers ? NULL : tsigkey,
-                                   FIND_TIMEOUT * 20, FIND_TIMEOUT, 3,
-                                   global_task, recvsoa, reqinfo, request);
+                                   default_servers ? NULL : tsigkey, timeout,
+                                   udp_timeout, udp_retries, global_task,
+                                   recvsoa, reqinfo, request);
        check_result(result, "dns_request_create");
        requests++;
 }
@@ -3040,7 +3039,7 @@ send_gssrequest(isc_sockaddr_t *destaddr, dns_message_t *msg,
        }
 
        result = dns_request_create(requestmgr, msg, srcaddr, destaddr, options,
-                                   tsigkey, FIND_TIMEOUT * 20, FIND_TIMEOUT, 3,
+                                   tsigkey, timeout, udp_timeout, udp_retries,
                                    global_task, recvgss, reqinfo, request);
        check_result(result, "dns_request_create");
        if (debugging) {