glibc: another patch for the DNS resolver (Arch).
This commit is contained in:
parent
a2902a08ad
commit
75b36814a2
3 changed files with 37 additions and 23 deletions
|
@ -1,22 +0,0 @@
|
|||
diff --git a/resolv/res_send.c b/resolv/res_send.c
|
||||
index 97142b7..a001c1e 100644
|
||||
--- resolv/res_send.c
|
||||
+++ resolv/res_send.c
|
||||
@@ -549,7 +549,7 @@ __libc_res_nsend(res_state statp, const u_char *buf, int buflen,
|
||||
ns, ansp, ansp2, nansp2, resplen2);
|
||||
if (n < 0)
|
||||
return (-1);
|
||||
- if (n == 0 && (buf2 == NULL || resplen2 == 0))
|
||||
+ if (n == 0 && (buf2 == NULL || *resplen2 == 0))
|
||||
goto next_ns;
|
||||
} else {
|
||||
/* Use datagrams. */
|
||||
@@ -559,7 +559,7 @@ __libc_res_nsend(res_state statp, const u_char *buf, int buflen,
|
||||
ansp2, nansp2, resplen2);
|
||||
if (n < 0)
|
||||
return (-1);
|
||||
- if (n == 0 && (buf2 == NULL || resplen2 == 0))
|
||||
+ if (n == 0 && (buf2 == NULL || *resplen2 == 0))
|
||||
goto next_ns;
|
||||
if (v_circuit)
|
||||
// XXX Check whether both requests failed or
|
36
srcpkgs/glibc/patches/glibc-2.14-revert-4462fad3.patch
Normal file
36
srcpkgs/glibc/patches/glibc-2.14-revert-4462fad3.patch
Normal file
|
@ -0,0 +1,36 @@
|
|||
--- resolv/res_send.c 2011-06-10 18:59:03.041436996 +1000
|
||||
+++ resolv/res_send.c 2011-06-10 19:08:09.379309323 +1000
|
||||
@@ -549,7 +549,7 @@
|
||||
ns, ansp, ansp2, nansp2, resplen2);
|
||||
if (n < 0)
|
||||
return (-1);
|
||||
- if (n == 0 && (buf2 == NULL || resplen2 == 0))
|
||||
+ if (n == 0)
|
||||
goto next_ns;
|
||||
} else {
|
||||
/* Use datagrams. */
|
||||
@@ -559,7 +559,7 @@
|
||||
ansp2, nansp2, resplen2);
|
||||
if (n < 0)
|
||||
return (-1);
|
||||
- if (n == 0 && (buf2 == NULL || resplen2 == 0))
|
||||
+ if (n == 0)
|
||||
goto next_ns;
|
||||
if (v_circuit)
|
||||
// XXX Check whether both requests failed or
|
||||
@@ -1275,14 +1275,10 @@
|
||||
(*thisresplenp > *thisanssizp)
|
||||
? *thisanssizp : *thisresplenp);
|
||||
|
||||
- if (recvresp1 || (buf2 != NULL && recvresp2)) {
|
||||
- *resplen2 = 0;
|
||||
+ if (recvresp1 || (buf2 != NULL && recvresp2))
|
||||
return resplen;
|
||||
- }
|
||||
if (buf2 != NULL)
|
||||
{
|
||||
- /* No data from the first reply. */
|
||||
- resplen = 0;
|
||||
/* We are waiting for a possible second reply. */
|
||||
if (hp->id == anhp->id)
|
||||
recvresp1 = 1;
|
|
@ -1,7 +1,7 @@
|
|||
# Template file for 'glibc'
|
||||
pkgname=glibc
|
||||
version=2.14
|
||||
revision=4
|
||||
revision=5
|
||||
distfiles="http://ftp.gnu.org/gnu/glibc/glibc-${version}.tar.bz2"
|
||||
build_style=custom-install
|
||||
short_desc="The GNU C library"
|
||||
|
|
Loading…
Reference in a new issue