Blame SOURCES/glibc-rh804630.patch
|
|
b9ba6d |
diff -rup c/resolv/res_send.c d/resolv/res_send.c
|
|
|
b9ba6d |
--- c/resolv/res_send.c 2012-01-01 05:16:32.000000000 -0700
|
|
|
b9ba6d |
+++ d/resolv/res_send.c 2012-03-30 12:39:30.862467628 -0600
|
|
|
b9ba6d |
@@ -409,6 +409,7 @@ __libc_res_nsend(res_state statp, const
|
|
|
b9ba6d |
*/
|
|
|
b9ba6d |
if (EXT(statp).nsinit == 0) {
|
|
|
b9ba6d |
unsigned char map[MAXNS];
|
|
|
b9ba6d |
+ unsigned int ext_total_nscount;
|
|
|
b9ba6d |
|
|
|
b9ba6d |
memset (map, MAXNS, sizeof (map));
|
|
|
b9ba6d |
for (n = 0; n < MAXNS; n++) {
|
|
|
b9ba6d |
@@ -422,8 +423,9 @@ __libc_res_nsend(res_state statp, const
|
|
|
b9ba6d |
}
|
|
|
b9ba6d |
}
|
|
|
b9ba6d |
n = statp->nscount;
|
|
|
b9ba6d |
- if (statp->nscount > EXT(statp).nscount)
|
|
|
b9ba6d |
- for (n = EXT(statp).nscount, ns = 0;
|
|
|
b9ba6d |
+ ext_total_nscount = EXT(statp).nscount + EXT(statp).nscount6;
|
|
|
b9ba6d |
+ if (statp->nscount > ext_total_nscount)
|
|
|
b9ba6d |
+ for (n = ext_total_nscount, ns = 0;
|
|
|
b9ba6d |
n < statp->nscount; n++) {
|
|
|
b9ba6d |
while (ns < MAXNS
|
|
|
b9ba6d |
&& EXT(statp).nsmap[ns] != MAXNS)
|