]>
Commit | Line | Data |
---|---|---|
48e671d5 | 1 | #ifndef _FAKE_SOCKET_H |
2 | #define _FAKE_SOCKET_H | |
3 | ||
4 | #include "config.h" | |
5 | #include "sys/types.h" | |
6 | ||
7 | #ifndef HAVE_STRUCT_SOCKADDR_STORAGE | |
5daf7064 | 8 | # define _SS_MAXSIZE 128 /* Implementation specific max size */ |
9 | # define _SS_ALIGNSIZE (sizeof(int)) | |
10 | # define _SS_PAD1SIZE (_SS_ALIGNSIZE - sizeof(u_short)) | |
11 | # define _SS_PAD2SIZE (_SS_MAXSIZE - (sizeof(u_short) + \ | |
48e671d5 | 12 | _SS_PAD1SIZE + _SS_ALIGNSIZE)) |
13 | ||
14 | struct sockaddr_storage { | |
15 | u_short ss_family; | |
16 | char __ss_pad1[_SS_PAD1SIZE]; | |
17 | int __ss_align; | |
18 | char __ss_pad2[_SS_PAD2SIZE]; | |
19 | }; | |
20 | #endif /* !HAVE_STRUCT_SOCKADDR_STORAGE */ | |
21 | ||
22 | #ifndef IN6_IS_ADDR_LOOPBACK | |
5daf7064 | 23 | # define IN6_IS_ADDR_LOOPBACK(a) \ |
48e671d5 | 24 | (((u_int32_t *) (a))[0] == 0 && ((u_int32_t *) (a))[1] == 0 && \ |
25 | ((u_int32_t *) (a))[2] == 0 && ((u_int32_t *) (a))[3] == htonl (1)) | |
26 | #endif /* !IN6_IS_ADDR_LOOPBACK */ | |
27 | ||
28 | #ifndef HAVE_STRUCT_IN6_ADDR | |
29 | struct in6_addr { | |
30 | u_int8_t s6_addr[16]; | |
31 | }; | |
32 | #endif /* !HAVE_STRUCT_IN6_ADDR */ | |
33 | ||
34 | #ifndef HAVE_STRUCT_SOCKADDR_IN6 | |
35 | struct sockaddr_in6 { | |
36 | unsigned short sin6_family; | |
37 | u_int16_t sin6_port; | |
38 | u_int32_t sin6_flowinfo; | |
39 | struct in6_addr sin6_addr; | |
40 | }; | |
41 | #endif /* !HAVE_STRUCT_SOCKADDR_IN6 */ | |
42 | ||
43 | #ifndef AF_INET6 | |
44 | /* Define it to something that should never appear */ | |
45 | #define AF_INET6 AF_MAX | |
46 | #endif | |
47 | ||
48 | #endif /* !_FAKE_SOCKET_H */ | |
49 |