]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
Remember we switched to single-request mode.
authorUlrich Drepper <drepper@redhat.com>
Thu, 11 Jun 2009 17:07:33 +0000 (10:07 -0700)
committerPetr Baudis <pasky@suse.cz>
Fri, 12 Jun 2009 09:41:55 +0000 (11:41 +0200)
This change prevents repetition in most later calls of the resolver
in case the DNS server or the network connection is broken.
(cherry picked from commit 310647e9809986986650994d036af18ca9b17fb2)

ChangeLog
resolv/res_send.c

index c6c3553ee1999a58799554085a8887e2e0f64a68..ecf7c103c3117d6a73bb52774f240c3d91e59ee7 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2009-06-11  Ulrich Drepper  <drepper@redhat.com>
+
+       * resolv/res_send.c (send_dg): Remember we switched to
+       single-request mode.
+
 2009-06-09  Ulrich Drepper  <drepper@redhat.com>
 
        * dlfcn/dlfcn.h: Remove comma at end of enum.
index 25a854f72e11599039f3621326f5904c479ef6c6..39c69da2bcc8e9713306bf565df312cc4b3d2dd4 100644 (file)
@@ -1008,7 +1008,7 @@ send_dg(res_state statp,
                seconds /= statp->nscount;
        if (seconds <= 0)
                seconds = 1;
-       bool single_request = ((statp->options) & RES_SNGLKUP) != 0;// XXX
+       bool single_request = (statp->options & RES_SNGLKUP) != 0;// XXX
        int save_gotsomewhere = *gotsomewhere;
  retry:
        evNowTime(&now);
@@ -1059,6 +1059,7 @@ send_dg(res_state statp,
                       have received the first answer.  */
                    if (!single_request)
                      {
+                       statp->options |= RES_SNGLKUP;
                        single_request = true;
                        *gotsomewhere = save_gotsomewhere;
                        goto retry;