about summary refs log tree commit diff
path: root/posix
diff options
context:
space:
mode:
Diffstat (limited to 'posix')
-rw-r--r--posix/Makefile3
-rw-r--r--posix/bug-ga1.c22
2 files changed, 24 insertions, 1 deletions
diff --git a/posix/Makefile b/posix/Makefile
index 5a9d7f9136..97e0325d08 100644
--- a/posix/Makefile
+++ b/posix/Makefile
@@ -80,7 +80,8 @@ tests		:= tstgetopt testfnm runtests runptests	     \
 		   bug-regex13 bug-regex14 bug-regex15 bug-regex16 \
 		   bug-regex17 bug-regex18 bug-regex19 bug-regex20 \
 		   bug-regex21 bug-regex22 bug-regex23 tst-nice tst-nanosleep \
-		   transbug tst-rxspencer tst-pcre tst-boost
+		   transbug tst-rxspencer tst-pcre tst-boost \
+		   bug-ga1
 ifeq (yes,$(build-shared))
 test-srcs	:= globtest
 tests           += wordexp-test tst-exec tst-spawn
diff --git a/posix/bug-ga1.c b/posix/bug-ga1.c
new file mode 100644
index 0000000000..39e45d7845
--- /dev/null
+++ b/posix/bug-ga1.c
@@ -0,0 +1,22 @@
+/* Test case by Anders Carlsson <andersca@gnome.org>.  */
+#include <sys/types.h>
+#include <sys/socket.h>
+#include <netdb.h>
+#include <stdio.h>
+
+int
+main (void)
+{
+  struct addrinfo req, *ai;
+  char name[] = "3ffe:0200:0064:0000:0202:b3ff:fe16:ddc5";
+
+  memset (&req, '\0', sizeof req);
+  req.ai_family = AF_INET6;
+
+  /* This call used to crash.  We cannot expect the test machine to have
+     IPv6 enabled so we just check that the call returns.  */
+  getaddrinfo (name, NULL, &req, &ai);
+
+  puts ("success!");
+  return 0;
+}