1 #include <stdio.h>
2 #include <string.h>
3 #include <arpa/inet.h>
4 #include <netinet/in.h>
5
6
7 static int
test(unsigned int inaddr,const char * expected)8 test (unsigned int inaddr, const char *expected)
9 {
10 struct in_addr addr;
11 char *res;
12 int fail;
13
14 addr.s_addr = htonl (inaddr);
15 res = inet_ntoa (addr);
16 fail = strcmp (res, expected);
17
18 printf ("%#010x -> \"%s\" -> %s%s\n", inaddr, res,
19 fail ? "fail, expected" : "ok", fail ? expected : "");
20
21 return fail;
22 }
23
24
25 static int
do_test(void)26 do_test (void)
27 {
28 int result = 0;
29
30 result |= test (INADDR_LOOPBACK, "127.0.0.1");
31 result |= test (INADDR_BROADCAST, "255.255.255.255");
32 result |= test (INADDR_ANY, "0.0.0.0");
33 result |= test (0xc0060746, "192.6.7.70");
34
35 return result;
36 }
37
38 #define TEST_FUNCTION do_test ()
39 #include "../test-skeleton.c"
40