about summary refs log tree commit diff
path: root/posix/bug-ga2.c
diff options
context:
space:
mode:
Diffstat (limited to 'posix/bug-ga2.c')
-rw-r--r--posix/bug-ga2.c30
1 files changed, 30 insertions, 0 deletions
diff --git a/posix/bug-ga2.c b/posix/bug-ga2.c
new file mode 100644
index 0000000000..5ea759b8ce
--- /dev/null
+++ b/posix/bug-ga2.c
@@ -0,0 +1,30 @@
+/* Test case by Sam Varshavchik <mrsam@courier-mta.com>.  */
+#include <mcheck.h>
+#include <netdb.h>
+#include <stdio.h>
+#include <string.h>
+
+int
+main (void)
+{
+  struct addrinfo hints, *res;
+  int i, ret;
+
+  mtrace ();
+  for (i = 0; i < 100; i++)
+    {
+      memset (&hints, 0, sizeof (hints));
+      hints.ai_family = PF_UNSPEC;
+      hints.ai_socktype = SOCK_STREAM;
+
+      ret = getaddrinfo ("www.gnu.org", "http", &hints, &res);
+
+      if (ret)
+	{
+	  printf ("%s\n", gai_strerror (ret));
+	  return 1;
+	}
+      freeaddrinfo (res);
+    }
+  return 0;
+}