aboutsummaryrefslogtreecommitdiff
path: root/posix/tst-getaddrinfo3.c
diff options
context:
space:
mode:
Diffstat (limited to 'posix/tst-getaddrinfo3.c')
-rw-r--r--posix/tst-getaddrinfo3.c151
1 files changed, 0 insertions, 151 deletions
diff --git a/posix/tst-getaddrinfo3.c b/posix/tst-getaddrinfo3.c
deleted file mode 100644
index 5077f31..0000000
--- a/posix/tst-getaddrinfo3.c
+++ /dev/null
@@ -1,151 +0,0 @@
-#include <mcheck.h>
-#include <netdb.h>
-#include <stdio.h>
-#include <string.h>
-#include <arpa/inet.h>
-#include <arpa/nameser.h>
-
-
-static int
-do_test (void)
-{
- mtrace ();
-
- int result = 0;
- struct addrinfo hints;
- struct addrinfo *ai_res;
- int s;
-
-#define T(no, fail, addr, fam, coraddr) \
- s = getaddrinfo (addr, NULL, &hints, &ai_res); \
- if (s != 0) \
- { \
- if (s != fail) \
- { \
- printf ("getaddrinfo test %d failed: %s\n", no, gai_strerror (s)); \
- result = 1; \
- } \
- ai_res = NULL; \
- } \
- else if (fail) \
- { \
- printf ("getaddrinfo test %d should have failed but did not\n", no); \
- result = 1; \
- } \
- else if (ai_res->ai_family != fam) \
- { \
- printf ("\
-getaddrinfo test %d return address of family %d, expected %d\n", \
- no, ai_res->ai_family, fam); \
- result = 1; \
- } \
- else if (fam == AF_INET) \
- { \
- if (ai_res->ai_addrlen != sizeof (struct sockaddr_in)) \
- { \
- printf ("getaddrinfo test %d: address size %zu, expected %zu\n", \
- no, (size_t) ai_res->ai_addrlen, \
- sizeof (struct sockaddr_in)); \
- result = 1; \
- } \
- else if (strcmp (coraddr, \
- inet_ntoa (((struct sockaddr_in *) ai_res->ai_addr)->sin_addr))\
- != 0) \
- { \
- printf ("getaddrinfo test %d: got value %s, expected %s\n", \
- no, \
- inet_ntoa (((struct sockaddr_in *) ai_res->ai_addr)->sin_addr), \
- coraddr); \
- result = 1; \
- } \
- } \
- else \
- { \
- char buf[100]; \
- \
- if (ai_res->ai_addrlen != sizeof (struct sockaddr_in6)) \
- { \
- printf ("getaddrinfo test %d: address size %zu, expected %zu\n", \
- no, (size_t) ai_res->ai_addrlen, \
- sizeof (struct sockaddr_in6)); \
- result = 1; \
- } \
- else if (strcmp (coraddr, \
- inet_ntop (AF_INET6, \
- &((struct sockaddr_in6 *) ai_res->ai_addr)->sin6_addr,\
- buf, sizeof (buf))) \
- != 0) \
- { \
- printf ("getaddrinfo test %d: got value %s, expected %s\n", \
- no, \
- inet_ntop (AF_INET6, \
- & ((struct sockaddr_in6 *) ai_res->ai_addr)->sin6_addr, \
- buf, sizeof (buf)), \
- coraddr); \
- result = 1; \
- } \
- } \
- if (ai_res != NULL && ai_res->ai_next != NULL) \
- { \
- puts ("expected only one result"); \
- result = 1; \
- } \
- freeaddrinfo (ai_res)
-
-
- memset (&hints, '\0', sizeof (hints));
- hints.ai_family = AF_UNSPEC;
- hints.ai_socktype = SOCK_STREAM;
- T (1, 0, "127.0.0.1", AF_INET, "127.0.0.1");
-
- memset (&hints, '\0', sizeof (hints));
- hints.ai_family = AF_INET;
- hints.ai_socktype = SOCK_STREAM;
- T (2, 0, "127.0.0.1", AF_INET, "127.0.0.1");
-
- memset (&hints, '\0', sizeof (hints));
- hints.ai_family = AF_INET6;
- hints.ai_socktype = SOCK_STREAM;
- hints.ai_flags = AI_V4MAPPED;
- T (3, 0, "127.0.0.1", AF_INET6, "::ffff:127.0.0.1");
-
- memset (&hints, '\0', sizeof (hints));
- hints.ai_family = AF_INET6;
- hints.ai_socktype = SOCK_STREAM;
- T (4, EAI_ADDRFAMILY, "127.0.0.1", AF_INET6, "");
-
- memset (&hints, '\0', sizeof (hints));
- hints.ai_family = AF_UNSPEC;
- hints.ai_socktype = SOCK_STREAM;
- T (5, 0, "::1", AF_INET6, "::1");
-
- memset (&hints, '\0', sizeof (hints));
- hints.ai_family = AF_INET;
- hints.ai_socktype = SOCK_STREAM;
- T (6, EAI_ADDRFAMILY, "::1", AF_INET6, "");
-
- memset (&hints, '\0', sizeof (hints));
- hints.ai_family = AF_INET6;
- hints.ai_socktype = SOCK_STREAM;
- T (7, 0, "::1", AF_INET6, "::1");
-
- memset (&hints, '\0', sizeof (hints));
- hints.ai_family = AF_UNSPEC;
- hints.ai_socktype = SOCK_STREAM;
- T (8, 0, "::ffff:127.0.0.1", AF_INET6, "::ffff:127.0.0.1");
-
- memset (&hints, '\0', sizeof (hints));
- hints.ai_family = AF_INET;
- hints.ai_socktype = SOCK_STREAM;
- T (9, 0, "::ffff:127.0.0.1", AF_INET, "127.0.0.1");
-
- memset (&hints, '\0', sizeof (hints));
- hints.ai_family = AF_INET6;
- hints.ai_socktype = SOCK_STREAM;
- T (10, 0, "::ffff:127.0.0.1", AF_INET6, "::ffff:127.0.0.1");
-
- return result;
-}
-
-#define TEST_FUNCTION do_test ()
-#include "../test-skeleton.c"