about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog2
-rw-r--r--posix/Makefile3
-rw-r--r--posix/bug-ga1.c22
3 files changed, 26 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 9d4712f03d..a2d36ccf8f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -2,6 +2,8 @@
 
 	* sysdeps/posix/getaddrinfo.c (match_prefix): Correctly match
 	partial bytes [BZ #24].
+	* posix/Makefile (tests): Add bug-ga1.
+	* posix/bug-ga1.c: New file.
 
 2004-02-13  Steven Munroe  <sjmunroe@us.ibm.com>
 
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;
+}