1#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined XPG4
2type socklen_t
3
4type sa_family_t
5
6# if defined XOPEN2K8 || defined POSIX2008
7type size_t
8type ssize_t
9# endif
10
11type {struct sockaddr}
12
13element {struct sockaddr} sa_family_t sa_family
14element {struct sockaddr} char sa_data []
15
16type {struct sockaddr_storage}
17
18element {struct sockaddr_storage} sa_family_t ss_family
19
20type {struct msghdr}
21
22element {struct msghdr} {void*} msg_name
23element {struct msghdr} socklen_t msg_namelen
24element {struct msghdr} {struct iovec*} msg_iov
25// Bug 16919: wrong type for msg_iovlen and msg_controllen members.
26xfail-element {struct msghdr} int msg_iovlen
27element {struct msghdr} {void*} msg_control
28xfail-element {struct msghdr} socklen_t msg_controllen
29element {struct msghdr} int msg_flags
30
31type {struct iovec}
32
33element {struct iovec} {void*} iov_base
34element {struct iovec} size_t iov_len
35
36type {struct cmsghdr}
37
38// Bug 16919: wrong type for cmsg_len member.
39xfail-element {struct cmsghdr} socklen_t cmsg_len
40element {struct cmsghdr} int cmsg_level
41element {struct cmsghdr} int cmsg_type
42
43macro SCM_RIGHTS
44
45macro CMSG_DATA
46macro CMSG_NXTHDR
47macro CMSG_FIRSTHDR
48
49type {struct linger}
50
51element {struct linger} int l_onoff
52element {struct linger} int l_linger
53
54macro SOCK_DGRAM
55macro SOCK_STREAM
56macro SOCK_SEQPACKET
57
58macro SOL_SOCKET
59
60macro SO_ACCEPTCONN
61macro SO_BROADCAST
62macro SO_DEBUG
63macro SO_DONTROUTE
64macro SO_ERROR
65macro SO_KEEPALIVE
66macro SO_LINGER
67macro SO_OOBINLINE
68macro SO_RCVBUF
69macro SO_RCVLOWAT
70macro SO_RCVTIMEO
71macro SO_REUSEADDR
72macro SO_SNDBUF
73macro SO_SNDLOWAT
74macro SO_SNDTIMEO
75macro SO_TYPE
76
77macro SOMAXCONN
78
79macro MSG_CTRUNC
80macro MSG_DONTROUTE
81macro MSG_EOR
82macro MSG_OOB
83macro MSG_PEEK
84macro MSG_TRUNC
85macro MSG_WAITALL
86# if defined XOPEN2K8 || defined POSIX2008
87constant MSG_NOSIGNAL
88# endif
89
90macro AF_UNIX
91macro AF_UNSPEC
92macro AF_INET
93macro AF_INET6
94
95macro SHUT_RD
96macro SHUT_WR
97macro SHUT_RDWR
98
99function int accept (int, struct sockaddr*, socklen_t*)
100function int bind (int, const struct sockaddr*, socklen_t)
101function int connect (int, const struct sockaddr*, socklen_t)
102function int getpeername (int, struct sockaddr*, socklen_t*)
103function int getsockname (int, struct sockaddr*, socklen_t*)
104function int getsockopt (int, int, int, void*, socklen_t*)
105function int listen (int, int)
106function ssize_t recv (int, void*, size_t, int)
107function ssize_t recvfrom (int, void*, size_t, int, struct sockaddr*, socklen_t*)
108function ssize_t recvmsg (int, struct msghdr*, int)
109function ssize_t send (int, const void*, size_t, int)
110function ssize_t sendmsg (int, const struct msghdr*, int)
111function ssize_t sendto (int, const void*, size_t, int, const struct sockaddr*, socklen_t)
112function int setsockopt (int, int, int, const void*, socklen_t)
113function int shutdown (int, int)
114function int socket (int, int, int)
115function int socketpair (int, int, int, int[2])
116#if !defined XPG42 && !defined UNIX98
117function int sockatmark (int)
118#endif
119
120allow-header sys/uio.h
121
122allow ss_*
123allow sa_*
124allow if_*
125allow ifc_*
126allow ifru_*
127allow infu_*
128allow ifra_*
129allow msg_*
130allow cmsg_*
131allow l_*
132allow SO*
133allow AF_*
134allow CMSG_*
135allow MSG_*
136allow PF_*
137allow SCM_*
138allow SHUT_*
139allow *_t
140#endif
141