File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / dnsmasq / contrib / try-all-ns / dnsmasq-2.68-try-all-ns
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Sun Jun 15 16:31:38 2014 UTC (10 years, 9 months ago) by misho
Branches: elwix, dnsmasq, MAIN
CVS tags: v8_2p1, v2_84, v2_76p1, v2_71, HEAD
dnsmasq 2.71

    1: From: Jesse Glick <jglick@cloudbees.com>
    2: To: dnsmasq-discuss@lists.thekelleys.org.uk
    3: Subject: Re: [Dnsmasq-discuss] Ability to delegate to one server but fall
    4:  back to another after NXDOMAIN?
    5: 
    6: 
    7: On Wed, Jan 15, 2014 at 12:30 PM, Simon Kelley <simon@thekelleys.org.uk> wrote:
    8: > > There's a (very old) patch in contrib/try-all-ns that would make a starting point
    9: This does not apply against trunk, so I tried to rework it. The
   10: following appears to do what I expect:
   11: 
   12: diff --git a/src/forward.c b/src/forward.c
   13: index 8167229..76070b5 100644
   14: --- a/src/forward.c
   15: +++ b/src/forward.c
   16: @@ -610,7 +610,11 @@ void reply_query(int fd, int family, time_t now)
   17: 
   18:    if ((RCODE(header) == SERVFAIL || RCODE(header) == REFUSED) &&
   19:        !option_bool(OPT_ORDER) &&
   20: -      forward->forwardall == 0)
   21: +      forward->forwardall == 0 ||
   22: +      /* try each in turn */
   23: +      RCODE(header) == NXDOMAIN &&
   24: +      option_bool(OPT_ORDER) &&
   25: +      server->next != NULL)
   26:      /* for broken servers, attempt to send to another one. */
   27:      {
   28:        unsigned char *pheader;
   29: 

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>