aboutsummaryrefslogtreecommitdiffstats
path: root/toolchain
diff options
context:
space:
mode:
authorNicolas Thill <nico@openwrt.org>2008-05-11 10:19:12 +0000
committerNicolas Thill <nico@openwrt.org>2008-05-11 10:19:12 +0000
commit28a650e13a261fbc463ae41a55bf7012b60e53e3 (patch)
tree1574c11f61cc154b9e2fd9a1966b85d0e67242cc /toolchain
parent8222d04d45ebf74ce95c4a08de43c949d54cfa7b (diff)
downloadupstream-28a650e13a261fbc463ae41a55bf7012b60e53e3.tar.gz
upstream-28a650e13a261fbc463ae41a55bf7012b60e53e3.tar.bz2
upstream-28a650e13a261fbc463ae41a55bf7012b60e53e3.zip
Fix a bug causing an infinite loop in getaddrinfo (closes: #3344)
SVN-Revision: 11106
Diffstat (limited to 'toolchain')
-rw-r--r--toolchain/uClibc/patches/009-fix_getaddrinfo_infinite_loop.patch14
1 files changed, 14 insertions, 0 deletions
diff --git a/toolchain/uClibc/patches/009-fix_getaddrinfo_infinite_loop.patch b/toolchain/uClibc/patches/009-fix_getaddrinfo_infinite_loop.patch
new file mode 100644
index 0000000000..27830b3c16
--- /dev/null
+++ b/toolchain/uClibc/patches/009-fix_getaddrinfo_infinite_loop.patch
@@ -0,0 +1,14 @@
+diff -ruN uClibc-0.9.29.orig/libc/inet/getaddrinfo.c uClibc-0.9.29/libc/inet/getaddrinfo.c
+--- uClibc-0.9.29.orig/libc/inet/getaddrinfo.c 2006-01-22 20:35:08.000000000 +0100
++++ uClibc-0.9.29/libc/inet/getaddrinfo.c 2008-05-11 03:33:18.000000000 +0200
+@@ -858,7 +858,10 @@
+ if (hints->ai_family == g->family || hints->ai_family == AF_UNSPEC)
+ {
+ if ((hints->ai_flags & AI_ADDRCONFIG) && !addrconfig(g->family))
++ {
++ g++;
+ continue;
++ }
+ j++;
+ if (pg == NULL || pg->gaih != g->gaih)
+ {