From: Nicolas Thill <nico@openwrt.org>
Date: Sun, 11 May 2008 10:19:12 +0000 (+0000)
Subject: Fix a bug causing an infinite loop in getaddrinfo (closes: #3344)
X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=28a650e13a261fbc463ae41a55bf7012b60e53e3;p=openwrt%2Fstaging%2Fdangole.git

Fix a bug causing an infinite loop in getaddrinfo (closes: #3344)

SVN-Revision: 11106
---

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)
+ 	    {