1 ;; -*- Mode: Lisp; Syntax: ANSI-Common-Lisp -*-
3 ;; adapted from constants.lisp in the sb-bsd-sockets contrib module
4 ;; many docstrings here are Copyright (C) 2001-2003 by
5 ;; the Institute of Electrical and Electronics Engineers, Inc and The Open Group
8 ("sys/types.h" "inttypes.h" "sys/socket.h" "unistd.h" "sys/un.h"
9 "netinet/in.h" "netinet/in_systm.h" "netinet/ip.h" "net/if.h"
10 "netdb.h" "errno.h" "netinet/tcp.h" "fcntl.h" "limits.h"
11 "sys/uio.h" "arpa/inet.h")
18 (:integer SC-AIO-LISTIO-MAX
"_SC_AIO_LISTIO_MAX")
19 (:integer SC-AIO-MAX
"_SC_AIO_MAX")
20 (:integer SC-AIO-PRIO-DELTA-MAX
"_SC_AIO_PRIO_DELTA_MAX")
21 (:integer SC-ARG-MAX
"_SC_ARG_MAX")
22 (:integer SC-ATEXIT-MAX
"_SC_ATEXIT_MAX")
23 (:integer SC-BC-BASE-MAX
"_SC_BC_BASE_MAX")
24 (:integer SC-BC-DIM-MAX
"_SC_BC_DIM_MAX")
25 (:integer SC-BC-SCALE-MAX
"_SC_BC_SCALE_MAX")
26 (:integer SC-BC-STRING-MAX
"_SC_BC_STRING_MAX")
27 (:integer SC-CHILD-MAX
"_SC_CHILD_MAX")
28 (:integer SC-CLK-TCK
"_SC_CLK_TCK")
29 (:integer SC-COLL-WEIGHTS-MAX
"_SC_COLL_WEIGHTS_MAX")
30 (:integer SC-DELAYTIMER-MAX
"_SC_DELAYTIMER_MAX")
31 (:integer SC-EXPR-NEST-MAX
"_SC_EXPR_NEST_MAX")
32 (:integer SC-HOST-NAME-MAX
"_SC_HOST_NAME_MAX")
33 (:integer SC-IOV-MAX
"_SC_IOV_MAX")
34 (:integer SC-LINE-MAX
"_SC_LINE_MAX")
35 (:integer SC-LOGIN-NAME-MAX
"_SC_LOGIN_NAME_MAX")
36 (:integer SC-NGROUPS-MAX
"_SC_NGROUPS_MAX")
37 (:integer SC-GETGR-R-SIZE-MAX
"_SC_GETGR_R_SIZE_MAX")
38 (:integer SC-GETPW-R-SIZE-MAX
"_SC_GETPW_R_SIZE_MAX")
39 (:integer SC-MQ-OPEN-MAX
"_SC_MQ_OPEN_MAX")
40 (:integer SC-MQ-PRIO-MAX
"_SC_MQ_PRIO_MAX")
41 (:integer SC-OPEN-MAX
"_SC_OPEN_MAX")
42 (:integer SC-ADVISORY-INFO
"_SC_ADVISORY_INFO")
43 (:integer SC-BARRIERS
"_SC_BARRIERS")
44 (:integer SC-ASYNCHRONOUS-IO
"_SC_ASYNCHRONOUS_IO")
45 (:integer SC-CLOCK-SELECTION
"_SC_CLOCK_SELECTION")
46 (:integer SC-CPUTIME
"_SC_CPUTIME")
47 (:integer SC-FILE-LOCKING
"_SC_FILE_LOCKING")
48 (:integer SC-FSYNC
"_SC_FSYNC")
49 (:integer SC-IPV6
"_SC_IPV6")
50 (:integer SC-JOB-CONTROL
"_SC_JOB_CONTROL")
51 (:integer SC-MAPPED-FILES
"_SC_MAPPED_FILES")
52 (:integer SC-MEMLOCK
"_SC_MEMLOCK")
53 (:integer SC-MEMLOCK-RANGE
"_SC_MEMLOCK_RANGE")
54 (:integer SC-MEMORY-PROTECTION
"_SC_MEMORY_PROTECTION")
55 (:integer SC-MESSAGE-PASSING
"_SC_MESSAGE_PASSING")
56 (:integer SC-MONOTONIC-CLOCK
"_SC_MONOTONIC_CLOCK")
57 (:integer SC-MULTI-PROCESS
"_SC_MULTI_PROCESS")
58 (:integer SC-PRIORITIZED-IO
"_SC_PRIORITIZED_IO")
59 (:integer SC-PRIORITY-SCHEDULING
"_SC_PRIORITY_SCHEDULING")
60 (:integer SC-RAW-SOCKETS
"_SC_RAW_SOCKETS")
61 (:integer SC-READER-WRITER-LOCKS
"_SC_READER_WRITER_LOCKS")
62 (:integer SC-REALTIME-SIGNALS
"_SC_REALTIME_SIGNALS")
63 (:integer SC-REGEXP
"_SC_REGEXP")
64 (:integer SC-SAVED-IDS
"_SC_SAVED_IDS")
65 (:integer SC-SEMAPHORES
"_SC_SEMAPHORES")
66 (:integer SC-SHARED-MEMORY-OBJECTS
"_SC_SHARED_MEMORY_OBJECTS")
67 (:integer SC-SHELL
"_SC_SHELL")
68 (:integer SC-SPAWN
"_SC_SPAWN")
69 (:integer SC-SPIN-LOCKS
"_SC_SPIN_LOCKS")
70 (:integer SC-SPORADIC-SERVER
"_SC_SPORADIC_SERVER")
71 (:integer SC-SYMLOOP-MAX
"_SC_SYMLOOP_MAX")
72 (:integer SC-SYNCHRONIZED-IO
"_SC_SYNCHRONIZED_IO")
73 (:integer SC-THREAD-ATTR-STACKADDR
"_SC_THREAD_ATTR_STACKADDR")
74 (:integer SC-THREAD-ATTR-STACKSIZE
"_SC_THREAD_ATTR_STACKSIZE")
75 (:integer SC-THREAD-CPUTIME
"_SC_THREAD_CPUTIME")
76 (:integer SC-THREAD-PRIO-INHERIT
"_SC_THREAD_PRIO_INHERIT")
77 (:integer SC-THREAD-PRIO-PROTECT
"_SC_THREAD_PRIO_PROTECT")
78 (:integer SC-THREAD-PRIORITY-SCHEDULING
"_SC_THREAD_PRIORITY_SCHEDULING")
79 (:integer SC-THREAD-PROCESS-SHARED
"_SC_THREAD_PROCESS_SHARED")
80 (:integer SC-THREAD-SAFE-FUNCTIONS
"_SC_THREAD_SAFE_FUNCTIONS")
81 (:integer SC-THREAD-SPORADIC-SERVER
"_SC_THREAD_SPORADIC_SERVER")
82 (:integer SC-THREADS
"_SC_THREADS")
83 (:integer SC-TIMEOUTS
"_SC_TIMEOUTS")
84 (:integer SC-TIMERS
"_SC_TIMERS")
85 (:integer SC-TRACE
"_SC_TRACE")
86 (:integer SC-TRACE-EVENT-FILTER
"_SC_TRACE_EVENT_FILTER")
87 (:integer SC-TRACE-INHERIT
"_SC_TRACE_INHERIT")
88 (:integer SC-TRACE-LOG
"_SC_TRACE_LOG")
89 (:integer SC-TYPED-MEMORY-OBJECTS
"_SC_TYPED_MEMORY_OBJECTS")
90 (:integer SC-VERSION
"_SC_VERSION")
91 (:integer SC-V6-ILP32-OFF32
"_SC_V6_ILP32_OFF32")
92 (:integer SC-V6-ILP32-OFFBIG
"_SC_V6_ILP32_OFFBIG")
93 (:integer SC-V6-LP64-OFF64
"_SC_V6_LP64_OFF64")
94 (:integer SC-V6-LPBIG-OFFBIG
"_SC_V6_LPBIG_OFFBIG")
95 (:integer SC-2-C-BIND
"_SC_2_C_BIND")
96 (:integer SC-2-C-DEV
"_SC_2_C_DEV")
97 (:integer SC-2-C-VERSION
"_SC_2_C_VERSION")
98 (:integer SC-2-CHAR-TERM
"_SC_2_CHAR_TERM")
99 (:integer SC-2-FORT-DEV
"_SC_2_FORT_DEV")
100 (:integer SC-2-FORT-RUN
"_SC_2_FORT_RUN")
101 (:integer SC-2-LOCALEDEF
"_SC_2_LOCALEDEF")
102 (:integer SC-2-PBS
"_SC_2_PBS")
103 (:integer SC-2-PBS-ACCOUNTING
"_SC_2_PBS_ACCOUNTING")
104 (:integer SC-2-PBS-CHECKPOINT
"_SC_2_PBS_CHECKPOINT")
105 (:integer SC-2-PBS-LOCATE
"_SC_2_PBS_LOCATE")
106 (:integer SC-2-PBS-MESSAGE
"_SC_2_PBS_MESSAGE")
107 (:integer SC-2-PBS-TRACK
"_SC_2_PBS_TRACK")
108 (:integer SC-2-SW-DEV
"_SC_2_SW_DEV")
109 (:integer SC-2-UPE
"_SC_2_UPE")
110 (:integer SC-2-VERSION
"_SC_2_VERSION")
111 (:integer SC-REGEX-VERSION
"_SC_REGEX_VERSION")
112 (:integer SC-PAGE-SIZE
"_SC_PAGE_SIZE")
113 (:integer SC-PAGESIZE
"_SC_PAGESIZE")
114 (:integer SC-THREAD-DESTRUCTOR-ITERATIONS
"_SC_THREAD_DESTRUCTOR_ITERATIONS")
115 (:integer SC-THREAD-KEYS-MAX
"_SC_THREAD_KEYS_MAX")
116 (:integer SC-THREAD-STACK-MIN
"_SC_THREAD_STACK_MIN")
117 (:integer SC-THREAD-THREADS-MAX
"_SC_THREAD_THREADS_MAX")
118 (:integer SC-RE-DUP-MAX
"_SC_RE_DUP_MAX")
119 (:integer SC-RTSIG-MAX
"_SC_RTSIG_MAX")
120 (:integer SC-SEM-NSEMS-MAX
"_SC_SEM_NSEMS_MAX")
121 (:integer SC-SEM-VALUE-MAX
"_SC_SEM_VALUE_MAX")
122 (:integer SC-SIGQUEUE-MAX
"_SC_SIGQUEUE_MAX")
123 (:integer SC-STREAM-MAX
"_SC_STREAM_MAX")
124 (:integer SC-SYMLOOP-MAX
"_SC_SYMLOOP_MAX")
125 (:integer SC-TIMER-MAX
"_SC_TIMER_MAX")
126 (:integer SC-TTY-NAME-MAX
"_SC_TTY_NAME_MAX")
127 (:integer SC-TZNAME-MAX
"_SC_TZNAME_MAX")
128 (:integer SC-XBS5-ILP32-OFF32
"_SC_XBS5_ILP32_OFF32")
129 (:integer SC-XBS5-ILP32-OFFBIG
"_SC_XBS5_ILP32_OFFBIG")
130 (:integer SC-XBS5-LP64-OFF64
"_SC_XBS5_LP64_OFF64")
131 (:integer SC-XBS5-LPBIG-OFFBIG
"_SC_XBS5_LPBIG_OFFBIG")
132 (:integer SC-XOPEN-CRYPT
"_SC_XOPEN_CRYPT")
133 (:integer SC-XOPEN-ENH-I18N
"_SC_XOPEN_ENH_I18N")
134 (:integer SC-XOPEN-LEGACY
"_SC_XOPEN_LEGACY")
135 (:integer SC-XOPEN-REALTIME
"_SC_XOPEN_REALTIME")
136 (:integer SC-XOPEN-REALTIME-THREADS
"_SC_XOPEN_REALTIME_THREADS")
137 (:integer SC-XOPEN-SHM
"_SC_XOPEN_SHM")
138 (:integer SC-XOPEN-STREAMS
"_SC_XOPEN_STREAMS")
139 (:integer SC-XOPEN-UNIX
"_SC_XOPEN_UNIX")
140 (:integer SC-XOPEN-VERSION
"_SC_XOPEN_VERSION")
141 (:integer SC-XOPEN-XCU-VERSION
"_SC_XOPEN_XCU_VERSION")
146 (:type size-t
"size_t")
147 (:type ssize-t
"ssize_t")
148 (:type off-t
"off_t")
149 (:type pid-t
"pid_t")
150 (:type uid-t
"uid_t")
151 (:type gid-t
"gid_t")
156 (:type uint8-t
"uint8_t")
157 (:type uint16-t
"uint16_t")
158 (:type uint32-t
"uint32_t")
163 (:structure iovec
("struct iovec"
164 ((* t
) base
"void *" "iov_base")
165 (size-t len
"size_t" "iov_len")))
166 #-linux
(:integer iov-max
"IOV_MAX")
167 #+linux
(:integer uio-maxiov
"UIO_MAXIOV")
172 (:type socklen-t
"socklen_t")
173 (:type sa-family-t
"sa_family_t")
174 (:structure sockaddr
("struct sockaddr"
175 (sa-family-t family
"sa_family_t" "sa_family")
176 (c-string data
"char" "sa_data")))
178 (:integer msg-ctrunc
"MSG_CTRUNC") ; recvmsg
179 (:integer msg-dontroute
"MSG_DONTROUTE") ; sendmsg
180 (:integer msg-eor
"MSG_EOR") ; recvmsg sendmsg
181 (:integer msg-oob
"MSG_OOB") ; recvmsg sendmsg
182 (:integer msg-peek
"MSG_PEEK") ; recvmsg
183 (:integer msg-trunc
"MSG_TRUNC") ; recvmsg
184 (:integer msg-waitall
"MSG_WAITALL") ; recvmsg
185 #+linux
(:integer msg-errqueue
"MSG_ERRQUEUE") ; recvmsg
186 #+linux
(:integer msg-nosignal
"MSG_NOSIGNAL") ; sendmsg
187 #+linux
(:integer msg-more
"MSG_MORE") ; sendmsg
188 #+linux
(:integer msg-confirm
"MSG_CONFIRM") ; sendmsg sendmsg
189 #+linux
(:integer msg-dontwait
"MSG_DONTWAIT") ; recvmsg sendmsg
190 #+linux
(:integer msg-proxy
"MSG_PROXY") ;
191 #+linux
(:integer msg-fin
"MSG_FIN") ;
192 #+linux
(:integer msg-syn
"MSG_SYN") ;
193 #+linux
(:integer msg-rst
"MSG_RST") ;
194 (:structure msghdr
("struct msghdr"
195 (c-string-pointer name
"void *" "msg_name")
196 (socklen-t namelen
"socklen_t" "msg_namelen")
197 ((* (struct iovec
)) iov
"struct iovec" "msg_iov")
198 (size-t iovlen
"size_t" "msg_iovlen")
199 ((* t
) control
"void *" "msg_control")
200 (socklen-t controllen
"socklen_t" "msg_controllen")
201 (int flags
"int" "msg_flags")))
203 (:integer sol-socket
"SOL_SOCKET")
204 (:integer sol-tcp
"SOL_TCP")
205 (:integer sol-ip
"SOL_IP")
206 (:integer sol-raw
"SOL_RAW")
208 (:structure cmsghdr
("struct cmsghdr"
209 (socklen-t len
"socklen_t" "cmsg_len")
210 (int level
"int" "cmsg_level")
211 (int type
"int" "cmsg_type")))
213 #+linux
(:integer scm-rights
"SCM_RIGHTS")
214 #+linux
(:integer scm-credentials
"SCM_CREDENTIALS")
215 #+linux
(:structure ucred
("struct ucred"
216 (pid-t pid
"pid_t" "pid")
217 (uid-t uid
"uid_t" "uid")
218 (gid-t gid
"gid_t" "gid")))
220 (:structure linger
("struct linger"
221 (int onoff
"int" "l_onoff")
222 (int linger
"int" "l_linger")))
226 (:integer af-unspec
"AF_UNSPEC")
227 (:integer af-local
"AF_UNIX")
228 (:integer af-unix
"AF_UNIX")
229 (:integer af-inet
"AF_INET")
230 (:integer af-inet6
"AF_INET6")
231 (:integer af-netlink
"AF_NETLINK")
232 (:integer af-packet
"AF_PACKET")
235 (:integer sock-stream
"SOCK_STREAM")
236 (:integer sock-dgram
"SOCK_DGRAM")
237 (:integer sock-seqpacket
"SOCK_SEQPACKET")
238 (:integer sock-raw
"SOCK_RAW")
239 #+linux
(:integer sock-rdm
"SOCK_RDM")
240 #+linux
(:integer sock-packet
"SOCK_PACKET")
242 (:integer somaxconn
"SOMAXCONN")
244 (:integer so-acceptconn
"SO_ACCEPTCONN") ; get
245 #+linux
(:integer so-bsdcompat
"SO_BSDCOMPAT") ; set
246 #+linux
(:integer so-bindtodevice
"SO_BINDTODEVICE") ; set
247 (:integer so-broadcast
"SO_BROADCAST") ; get set
248 (:integer so-debug
"SO_DEBUG") ; get set
249 (:integer so-dontroute
"SO_DONTROUTE") ; get set
250 (:integer so-error
"SO_ERROR") ; get
251 (:integer so-keepalive
"SO_KEEPALIVE") ; get set
252 (:integer so-linger
"SO_LINGER") ; get set
253 (:integer so-oobinline
"SO_OOBINLINE") ; get set
254 #+linux
(:integer so-passcred
"SO_PASSCRED") ; get set
255 #+linux
(:integer so-peercred
"SO_PEERCRED") ; get
256 #+linux
(:integer so-priority
"SO_PRIORITY") ; get set
257 (:integer so-rcvbuf
"SO_RCVBUF") ; get set
258 #+linux
(:integer so-rcvbufforce
"SO_RCVBUFFORCE") ; get set
259 (:integer so-rcvlowat
"SO_RCVLOWAT") ; get set
260 (:integer so-rcvtimeo
"SO_RCVTIMEO") ; get set
261 (:integer so-reuseaddr
"SO_REUSEADDR") ; get set
262 (:integer so-sndbuf
"SO_SNDBUF") ; get set
263 #+linux
(:integer so-sndbufforce
"SO_SNDBUFFORCE") ; get set
264 (:integer so-sndlowat
"SO_SNDLOWAT") ; get set
265 (:integer so-sndtimeo
"SO_SNDTIMEO") ; get set
266 #+linux
(:integer so-timestamp
"SO_TIMESTAMP") ; get set
267 (:integer so-type
"SO_TYPE") ; get
269 (:integer shut-rd
"SHUT_RD")
270 (:integer shut-wr
"SHUT_WR")
271 (:integer shut-rdwr
"SHUT_RDWR")
276 (:structure sockaddr-un
("struct sockaddr_un"
277 (sa-family-t family
"sa_family_t" "sun_family")
278 ((array (unsigned 8)) path
"char" "sun_path")))
283 (:type in-port-t
"in_port_t")
284 (:type in-addr-t
"in_addr_t")
286 (:structure in-addr
("struct in_addr"
287 (in-addr-t addr
"in_addr_t" "s_addr")))
288 (:structure sockaddr-in
("struct sockaddr_in"
289 (sa-family-t family
"sa_family_t" "sin_family")
290 (in-port-t port
"in_port_t" "sin_port")
291 ((struct in-addr
) addr
"struct in_addr" "sin_addr")))
293 (:structure in6-addr
("struct in6_addr"
294 ((union nil
(u6-addr8 (array uint8-t
))
295 (u6-addr16 (array uint16-t
))
296 (u6-addr32 (array uint32-t
)))
297 in6-u
"union" "in6_u")))
298 (:structure sockaddr-in6
("struct sockaddr_in6"
299 (sa-family-t family
"sa_family_t" "sin6_family")
300 (in-port-t port
"in_port_t" "sin6_port")
301 (uint32-t flowinfo
"uint32_t" "sin6_flowinfo")
302 ((struct in6-addr
) addr
"struct in6_addr" "sin6_addr")
303 (uint32-t scope-id
"uint32_t" "sin6_scope_id")))
305 (:structure ip-mreq
("struct ip_mreq"
306 ((struct in-addr
) imr-multiaddr
"struct in_addr" "imr_multiaddr")
307 ((struct in-addr
) imr-interface
"struct in_addr" "imr_interface")))
308 (:structure ip-mreq-source
("struct ip_mreq_source"
309 ((struct in-addr
) imr-multiaddr
"struct in_addr" "imr_multiaddr")
310 ((struct in-addr
) imr-interface
"struct in_addr" "imr_interface")
311 ((struct in-addr
) imr-sourceaddr
"struct in_addr" "imr_sourceaddr")))
312 (:structure ipv6-mreq
("struct ipv6_mreq"
313 ((struct in6-addr
) ipv6mr-multiaddr
"struct in6_addr" "ipv6mr_multiaddr")
314 (unsigned ipv6mr-interface
"unsigned" "ipv6mr_interface")))
316 (:integer inaddr-any
"INADDR_ANY")
317 (:integer inaddr-broadcast
"INADDR_BROADCAST")
318 (:integer inaddr-none
"INADDR_NONE")
319 (:integer in-loopbacknet
"IN_LOOPBACKNET")
320 (:integer inaddr-loopback
"INADDR_LOOPBACK")
321 (:integer inaddr-unspec-group
"INADDR_UNSPEC_GROUP")
322 (:integer inaddr-allhosts-group
"INADDR_ALLHOSTS_GROUP")
323 (:integer inaddr-allrtrs-group
"INADDR_ALLRTRS_GROUP")
324 (:integer inaddr-max-local-group
"INADDR_MAX_LOCAL_GROUP")
326 (:integer ipproto-ip
"IPPROTO_IP")
327 (:integer ipproto-ipv6
"IPPROTO_IPV6")
328 (:integer ipproto-icmp
"IPPROTO_ICMP")
329 (:integer ipproto-raw
"IPPROTO_RAW")
330 (:integer ipproto-tcp
"IPPROTO_TCP")
331 (:integer ipproto-udp
"IPPROTO_UDP")
333 (:integer inet-addrstrlen
"INET_ADDRSTRLEN")
334 (:integer inet6-addrstrlen
"INET6_ADDRSTRLEN")
336 (:integer ipv6-join-group
"IPV6_JOIN_GROUP")
337 (:integer ipv6-leave-group
"IPV6_LEAVE_GROUP")
338 (:integer ipv6-multicast-hops
"IPV6_MULTICAST_HOPS")
339 (:integer ipv6-multicast-if
"IPV6_MULTICAST_IF")
340 (:integer ipv6-multicast-loop
"IPV6_MULTICAST_LOOP")
341 (:integer ipv6-unicast-hops
"IPV6_UNICAST_HOPS")
342 (:integer ipv6-v6only
"IPV6_V6ONLY")
345 ;; from netinet/tcp.h
347 (:integer tcp-nodelay
"TCP_NODELAY")
348 (:integer tcp-maxseg
"TCP_MAXSEG")
349 (:integer tcp-cork
"TCP_CORK")
350 (:integer tcp-keepidle
"TCP_KEEPIDLE")
351 (:integer tcp-keepintvl
"TCP_KEEPINTVL")
352 (:integer tcp-keepcnt
"TCP_KEEPCNT")
353 (:integer tcp-syncnt
"TCP_SYNCNT")
354 (:integer tcp-linger2
"TCP_LINGER2")
355 (:integer tcp-defer-accept
"TCP_DEFER_ACCEPT")
356 (:integer tcp-window-clamp
"TCP_WINDOW_CLAMP")
357 (:integer tcp-info
"TCP_INFO")
358 (:integer tcp-quickack
"TCP_QUICKACK")
360 (:enum connstates
((tcp-established "TCP_ESTABLISHED")
361 (tcp-syn-sent "TCP_SYN_SENT")
362 (tcp-syn-recv "TCP_SYN_RECV")
363 (tcp-fin-wait1 "TCP_FIN_WAIT1")
364 (tcp-fin-wait2 "TCP_FIN_WAIT2")
365 (tcp-time-wait "TCP_TIME_WAIT")
366 (tcp-close "TCP_CLOSE")
367 (tcp-close-wait "TCP_CLOSE_WAIT")
368 (tcp-last-ack "TCP_LAST_ACK")
369 (tcp-listen "TCP_LISTEN")
370 (tcp-closing "TCP_CLOSING")))
377 (:integer ipport-reserved
"IPPORT_RESERVED")
379 (:structure addrinfo
("struct addrinfo"
380 (int flags
"int" "ai_flags")
381 (int family
"int" "ai_family")
382 (int type
"int" "ai_socktype")
383 (int protocol
"int" "ai_protocol")
384 (socklen-t addrlen
"socklen_t" "ai_addrlen")
385 ((* (struct sockaddr
)) addr
"struct sockaddr *" "ai_addr")
386 (c-string-pointer canonname
"char *" "ai_canonname")
387 ((* (struct addrinfo
)) next
"struct addrinfo *" "ai_next")))
390 (:integer ai-passive
"AI_PASSIVE")
391 (:integer ai-canonname
"AI_CANONNAME")
392 (:integer ai-numerichost
"AI_NUMERICHOST")
393 (:integer ai-numericserv
"AI_NUMERICSERV")
394 (:integer ai-v4mapped
"AI_V4MAPPED")
395 (:integer ai-all
"AI_ALL")
396 (:integer ai-addrconfig
"AI_ADDRCONFIG")
397 #+linux
(:integer ai-idn
"AI_IDN")
398 #+linux
(:integer ai-canonidn
"AI_CANONIDN")
399 #+linux
(:integer ai-idn_allow_unassigned
"AI_IDN_ALLOW_UNASSIGNED")
400 #+linux
(:integer ai-idn_use_std3_ascii_rules
"AI_IDN_USE_STD3_ASCII_RULES")
402 (:integer ni-maxhost
"NI_MAXHOST")
403 (:integer ni-maxserv
"NI_MAXSERV")
406 (:integer ni-nofqdn
"NI_NOFQDN")
407 (:integer ni-numerichost
"NI_NUMERICHOST")
408 (:integer ni-namereqd
"NI_NAMEREQD")
409 (:integer ni-numericserv
"NI_NUMERICSERV")
410 (:integer ni-numericscope
"NI_NUMERICSCOPE")
411 (:integer ni-dgram
"NI_DGRAM")
412 #+linux
(:integer ni-canonidn
"NI_CANONIDN")
413 #+linux
(:integer ni-idn_allow_unassigned
"NI_IDN_ALLOW_UNASSIGNED")
414 #+linux
(:integer ni-idn_use_std3_ascii_rules
"NI_IDN_USE_STD3_ASCII_RULES")
417 (:integer netdb-success
"NETDB_SUCCESS")
418 (:integer netdb-internal
"NETDB_INTERNAL")
419 #+linux
(:integer eai-addrfamily
"EAI_ADDRFAMILY" "Address family for NAME not supported.")
420 (:integer eai-again
"EAI_AGAIN" "The name could not be resolved at this time. Future attempts may succeed.")
421 (:integer eai-badflags
"EAI_BADFLAGS" "The flags had an invalid value.")
422 (:integer eai-fail
"EAI_FAIL" "A non-recoverable error occurred.")
423 (:integer eai-family
"EAI_FAMILY" "The address family was not recognized or the address length was invalid for the specified family.")
424 (:integer eai-memory
"EAI_MEMORY" "There was a memory allocation failure.")
425 #+linux
(:integer eai-nodata
"EAI_NODATA" "No address associated with NAME.")
426 (:integer eai-noname
"EAI_NONAME" "The name does not resolve for the supplied parameters. NI-NAMEREQD is set and the host's name cannot be located, or both nodename and servname were null.")
427 (:integer eai-service
"EAI_SERVICE" "The service passed was not recognized for the specified socket type.")
428 (:integer eai-socktype
"EAI_SOCKTYPE" "The intended socket type was not recognized.")
429 (:integer eai-system
"EAI_SYSTEM" "A system error occurred. The error code can be found in errno")
430 (:integer eai-overflow
"EAI_OVERFLOW" "An argument buffer overflowed.")
431 #+linux
(:integer eai-inprogress
"EAI_INPROGRESS" "Processing request in progress.")
432 #+linux
(:integer eai-canceled
"EAI_CANCELED" "Request canceled.")
433 #+linux
(:integer eai-notcanceled
"EAI_NOTCANCELED" "Request not canceled.")
434 #+linux
(:integer eai-alldone
"EAI_ALLDONE" "All requests done.")
435 #+linux
(:integer eai-intr
"EAI_INTR" "Interrupted by a signal.")
436 #+linux
(:integer eai-idn_encode
"EAI_IDN_ENCODE" "IDN encoding failed.")
438 (:structure netent
("struct netent"
439 (c-string-pointer name
"char *" "n_name")
440 ((* c-string
) aliases
"char **" "n_aliases")
441 (int type
"int" "n_addrtype")
442 (uint32-t net
"int" "n_net")))
443 (:structure protoent
("struct protoent"
444 (c-string-pointer name
"char *" "p_name")
445 ((* (* (unsigned 8))) aliases
"char **" "p_aliases")
446 (int proto
"int" "p_proto")))
451 (:structure if-nameindex
("struct if_nameindex"
452 (unsigned index
"unsigned" "if_index")
453 (c-string-pointer name
"char *" "if_name")))
454 (:integer ifnamesize
"IF_NAMESIZE")
455 (:integer ifnamsiz
"IFNAMSIZ")