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
commit77a46bc936eadb5775f24788722176be0ed7f3f3 (patch)
treefa841d2ac5d08b01fbaafc036694e653241fe456 /toolchain
parent7498219088c9a11d5cd692c4fcdab766c6c055f1 (diff)
downloadupstream-77a46bc936eadb5775f24788722176be0ed7f3f3.tar.gz
upstream-77a46bc936eadb5775f24788722176be0ed7f3f3.tar.bz2
upstream-77a46bc936eadb5775f24788722176be0ed7f3f3.zip
Fix a bug causing an infinite loop in getaddrinfo (closes: #3344)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@11106 3c298f89-4303-0410-b956-a3cf2f4a3e73
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)
+ {