648c79466af04241b565f72a004aa35ec406d59a
[libc-test] / src / api / netinet_in.c
1 #include <netinet/in.h>
2 #define T(t) (t*)0;
3 #define F(t,n) {t *y = &x.n;}
4 #define C(n) switch(n){case n:;}
5 #define I(n) {int i = n;}
6 static void f()
7 {
8 T(in_port_t)
9 T(in_addr_t)
10 T(sa_family_t)
11 T(uint8_t)
12 T(uint32_t)
13 {
14 struct in_addr x;
15 F(in_addr_t, s_addr)
16 }
17 {
18 struct sockaddr_in x;
19 F(sa_family_t, sin_family)
20 F(in_port_t, sin_port)
21 F(struct in_addr, sin_addr)
22 }
23 {
24 struct in6_addr x;
25 F(uint8_t, s6_addr[16])
26 }
27 {
28 struct sockaddr_in6 x;
29 F(sa_family_t, sin6_family)
30 F(in_port_t, sin6_port)
31 F(uint32_t, sin6_flowinfo)
32 F(struct in6_addr, sin6_addr)
33 F(uint32_t, sin6_scope_id)
34 }
35 {const struct in6_addr *x = &in6addr_any;}
36 {const struct in6_addr *x = &in6addr_loopback;}
37 {struct in6_addr x = IN6ADDR_ANY_INIT;}
38 {struct in6_addr x = IN6ADDR_LOOPBACK_INIT;}
39 {
40 struct ipv6_mreq x;
41 F(struct in6_addr, ipv6mr_multiaddr)
42 F(unsigned, ipv6mr_interface)
43 }
44 C(IPPROTO_IP)
45 C(IPPROTO_IPV6)
46 C(IPPROTO_ICMP)
47 C(IPPROTO_RAW)
48 C(IPPROTO_TCP)
49 C(IPPROTO_UDP)
50 C(INADDR_ANY)
51 C(INADDR_BROADCAST)
52 C(INET_ADDRSTRLEN)
53 I(htonl(0))
54 I(htons(0))
55 I(ntohl(0))
56 I(ntohs(0))
57 C(INET6_ADDRSTRLEN)
58 C(IPV6_JOIN_GROUP)
59 C(IPV6_LEAVE_GROUP)
60 C(IPV6_MULTICAST_HOPS)
61 C(IPV6_MULTICAST_IF)
62 C(IPV6_MULTICAST_LOOP)
63 C(IPV6_UNICAST_HOPS)
64 C(IPV6_V6ONLY)
65 I(IN6_IS_ADDR_UNSPECIFIED(&in6addr_any))
66 I(IN6_IS_ADDR_LOOPBACK(&in6addr_any))
67 I(IN6_IS_ADDR_MULTICAST(&in6addr_any))
68 I(IN6_IS_ADDR_LINKLOCAL(&in6addr_any))
69 I(IN6_IS_ADDR_SITELOCAL(&in6addr_any))
70 I(IN6_IS_ADDR_V4MAPPED(&in6addr_any))
71 I(IN6_IS_ADDR_V4COMPAT(&in6addr_any))
72 I(IN6_IS_ADDR_MC_NODELOCAL(&in6addr_any))
73 I(IN6_IS_ADDR_MC_LINKLOCAL(&in6addr_any))
74 I(IN6_IS_ADDR_MC_SITELOCAL(&in6addr_any))
75 I(IN6_IS_ADDR_MC_ORGLOCAL(&in6addr_any))
76 I(IN6_IS_ADDR_MC_GLOBAL(&in6addr_any))
77 }