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

source code of glibc/inet/tst-ntoa.c