summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/ares.c42
1 files changed, 42 insertions, 0 deletions
diff --git a/test/ares.c b/test/ares.c
new file mode 100644
index 0000000..5effffe
--- /dev/null
+++ b/test/ares.c
@@ -0,0 +1,42 @@
+
+#include <errno.h>
+#include <netinet/in.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <netdb.h>
+#include <sys/socket.h>
+#include <sys/types.h>
+#include <arpa/inet.h>
+#include <string.h>
+
+int main()
+{
+ struct addrinfo req;
+ void *ptr;
+
+ memset(&req, 0, sizeof(req));
+
+ struct addrinfo *res, *i;
+ int ret = 0;
+
+ char buf[NI_MAXHOST];
+
+ req.ai_family = AF_INET6;
+ req.ai_socktype = SOCK_DGRAM;
+
+ ret = getaddrinfo("google.com", NULL, &req, &res);
+ if (ret == 0) {
+ while (res) {
+ memset(buf, 0, NI_MAXHOST);
+
+ ptr = &((struct sockaddr_in6*)res->ai_addr)->sin6_addr;
+
+ inet_ntop(AF_INET6, ptr, buf, NI_MAXHOST);
+ printf("%s\n", buf);
+
+ res = res->ai_next;
+ }
+ } else {
+ printf("invalid %s\n", gai_strerror(ret));
+ }
+}