1 ;;;; -*- Mode: Lisp; indent-tabs-mode: nil -*-
3 ;;; --- Package definition.
6 (in-package :common-lisp-user
)
8 (defpackage :iolib.sockets
9 (:nicknames
:sockets
:iolib
/sockets
)
10 (:use
:iolib.base
:iolib.streams
:cffi
)
11 (:import-from
#:swap-bytes
12 #:htons
#:ntohs
#:htonl
#:ntohl
)
13 (:import-from
#:iolib.syscalls
#:defsyscall
14 #:size-t
#:ssize-t
#:pid-t
#:uid-t
#:gid-t
15 #:timeval
#:sec
#:usec
)
16 (:import-from
#:iolib.multiplex
#:decode-timeout
)
20 #:socket-address-in-use-error
21 #:socket-address-family-not-supported-error
22 #:socket-address-not-available-error
23 #:socket-already-connected-error
24 #:socket-connection-aborted-error
25 #:socket-connection-refused-error
26 #:socket-connection-reset-error
27 #:socket-connection-timeout-error
28 #:socket-endpoint-shutdown-error
29 #:socket-host-down-error
30 #:socket-host-unreachable-error
31 #:socket-network-down-error
32 #:socket-network-reset-error
33 #:socket-network-unreachable-error
34 #:socket-no-buffer-space-error
35 #:socket-no-network-error
36 #:socket-not-connected-error
37 #:socket-operation-not-supported-error
38 #:socket-option-not-supported-error
40 #:resolver-again-error
42 #:resolver-no-name-error
43 #:resolver-unknown-error
49 #:ignore-syscall-error
52 ;; Condition Accessors
56 #:resolver-error-datum
57 #:unknown-protocol-datum
58 #:unknown-service-datum
59 #:unknown-interface-datum
68 #+linux
#:netlink-address
78 #+linux
#:netlink-address-multicast-groups
80 ;; Well-known Addresses
83 #:+ipv6-interface-local-all-nodes
+
84 #:+ipv6-interface-local-all-routers
+
85 #:+ipv6-link-local-all-nodes
+
86 #:+ipv6-link-local-all-routers
+
88 #:+ipv6-site-local-all-routers
+
99 #:inet-address-loopback-p
100 #:inet-address-multicast-p
103 #:inet-address-unicast-p
104 #:inet-address-unspecified-p
107 #:ipv6-admin-local-multicast-p
108 #:ipv6-global-multicast-p
109 #:ipv6-global-unicast-p
110 #:ipv6-interface-local-multicast-p
112 #:ipv6-link-local-multicast-p
113 #:ipv6-link-local-unicast-p
114 #:ipv6-multicast-type
115 #:ipv6-organization-local-multicast-p
116 #:ipv6-reserved-multicast-p
117 #:ipv6-site-local-multicast-p
118 #:ipv6-site-local-unicast-p
119 #:ipv6-solicited-node-multicast-p
120 #:ipv6-transient-multicast-p
121 #:ipv6-unassigned-multicast-p
125 ;; Network masks and subnets
130 #:inet-address-private-p
131 #:inet-address-network-portion
132 #:inet-address-host-portion
133 #:inet-address-in-network-p
134 #:inet-addresses-in-same-network-p
135 #:inet-address-network-class
137 ;; Low-level Address Conversion
138 #:colon-separated-to-vector
143 #:string-address-to-vector
144 #:vector-to-colon-separated
147 #:map-ipv4-address-to-ipv6
148 #:map-ipv6-address-to-ipv4
150 ;; Hostname, Service, and Protocol Lookups
153 #:lookup-host
; DEPRECATED
157 ;; Network Interface Lookup
158 #:list-network-interfaces
171 #:socket-datagram-internet-active
172 #:socket-datagram-local-active
173 #:socket-stream-internet-active
174 #:socket-stream-internet-passive
175 #:socket-stream-local-active
176 #:socket-stream-local-passive
190 #:make-socket-from-fd
192 #:receive-file-descriptor
198 #:send-file-descriptor
202 #:socket-address-family
204 #:ipv6-socket-p
; DEPRECATED
211 #:with-accept-connection
217 #:dns-message-decoded-flags
218 #:dns-message-question
220 #:dns-message-authority
221 #:dns-message-additional
224 #:*default-backlog-size
*
225 #:*default-linger-seconds
*
229 #:*dns-search-domain
*
245 ;; CFFI enum ICMP Types
253 #:icmp-parameter-prob
254 #:icmp-timestamp-request
255 #:icmp-timestamp-reply
258 #:icmp-address-request
261 ;; CFFI enum ICMP-Unreach Types
277 #:icmp-prec-violation
280 ;; CFFI enum ICMP-Redirect Types
287 ;; CFFI enum ICMP-Time-Exceeded Types
290 #:icmp-exc-fragtime
))