summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-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 000000000..27830b3c1
--- /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)
+ {