Thread (1 message) 1 message, 1 author, 2015-03-08

Re: [PATCH] resolver.3: documents missing options used by _res structure defined in resolv.h and indicates defaults options

From: Stéphane Aulery <hidden>
Date: 2015-03-08 12:03:48

Hi Michael,

I made another patch with all your remarks.

Le dimanche 08 mars 2015 à 09:20:18, Michael Kerrisk (man-pages) a écrit :
quoted
+.TP
+.B RES_USE_INET6
+Try a AAAA query before an A query inside the
s/a AAAA/an AAAA/
This is a copy of resolv.conf.5. I will fix this too.

quoted
+.B RES_BLAST
+When resolvers want to even out the load on their nameservers, following
+them. 
I do not understand that last sentence. Could you clarify please.
I must admit that it's not clear to me either. I think this means that
server alias are swapped between each request. I have wrong? The word
"blast" leaves me skeptical.

What I found in code source:

From resolv.h:

#define RES_BLAST       0x00020000      /* blast all recursive servers */

Form res_send.c

/*
* Some resolvers want to even out the load on their nameservers.
* Note that RES_BLAST overrides RES_ROTATE.
*/
if (__builtin_expect ((statp->options & RES_ROTATE) != 0, 0) &&
   (statp->options & RES_BLAST) == 0) {
      struct sockaddr_in6 *ina;
      unsigned int map;

      n = 0;
      while (n < MAXNS && EXT(statp).nsmap[n] == MAXNS)
         n++;
      if (n < MAXNS) {
         ina = EXT(statp).nsaddrs[n];
         map = EXT(statp).nsmap[n];
         for (;;) {
            ns = n + 1;
            while (ns < MAXNS
               && EXT(statp).nsmap[ns] == MAXNS)
               ns++;
            if (ns == MAXNS)
               break;
            EXT(statp).nsaddrs[n] = EXT(statp).nsaddrs[ns];
            EXT(statp).nsmap[n] = EXT(statp).nsmap[ns];
            n = ns;
         }
         EXT(statp).nsaddrs[n] = ina;
         EXT(statp).nsmap[n] = map;
      }
}

quoted
Note this option overrides
+.BR RES_ROTATE .
+.TP
+.B RES_USEBSTRING
+Make reverse IPv6 lookups using the bit-label format described in RFC 2673;
+if this option is not set, then nibble format is used (since glibc 2.3.4).
Does the "(since glibc 2.3.4)" apply to the option, or to the
"then nibble format is used"? It's not clear. If the former, then write
I don't no. I picked this from resolv.conf.5.
It should be for RES_USEBSTRING.

Regards,

-- 
Stéphane Aulery
--
To unsubscribe from this list: send the line "unsubscribe linux-man" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help