1 ;;;; -*- Mode: Lisp; Syntax: ANSI-Common-Lisp; indent-tabs-mode: nil -*-
3 ;;; --- Package definition.
6 (in-package :common-lisp-user
)
8 (defpackage :net.sockets
10 (:use
:iolib.base
:cffi
:io.streams
)
11 (:import-from
#:iolib.syscalls
#:defsyscall
#:size-of-int
12 #:size-t
#:ssize-t
#:pid-t
#:uid-t
#:gid-t
13 #:timeval
#:size-of-timeval
#:sec
#:usec
)
14 (:import-from
#:io.multiplex
#:decode-timeout
)
18 #:socket-address-in-use-error
19 #:socket-address-not-available-error
20 #:socket-already-connected-error
21 #:socket-connection-aborted-error
22 #:socket-connection-refused-error
23 #:socket-connection-reset-error
24 #:socket-connection-timeout-error
25 #:socket-endpoint-shutdown-error
26 #:socket-host-down-error
27 #:socket-host-unreachable-error
28 #:socket-network-down-error
29 #:socket-network-reset-error
30 #:socket-network-unreachable-error
31 #:socket-no-buffer-space-error
32 #:socket-no-network-error
33 #:socket-not-connected-error
34 #:socket-operation-not-supported-error
35 #:socket-option-not-supported-error
37 #:resolver-again-error
39 #:resolver-no-name-error
40 #:resolver-unknown-error
45 ;; Condition Accessors
49 #:resolver-error-datum
50 #:unknown-protocol-datum
51 #:unknown-service-datum
52 #:unknown-interface-datum
69 ;; Well-known Addresses
72 #:+ipv6-interface-local-all-nodes
+
73 #:+ipv6-interface-local-all-routers
+
74 #:+ipv6-link-local-all-nodes
+
75 #:+ipv6-link-local-all-routers
+
77 #:+ipv6-site-local-all-routers
+
88 #:inet-address-loopback-p
89 #:inet-address-multicast-p
92 #:inet-address-unicast-p
93 #:inet-address-unspecified-p
96 #:ipv6-admin-local-multicast-p
97 #:ipv6-global-multicast-p
98 #:ipv6-global-unicast-p
99 #:ipv6-interface-local-multicast-p
101 #:ipv6-link-local-multicast-p
102 #:ipv6-link-local-unicast-p
103 #:ipv6-multicast-type
104 #:ipv6-organization-local-multicast-p
105 #:ipv6-reserved-multicast-p
106 #:ipv6-site-local-multicast-p
107 #:ipv6-site-local-unicast-p
108 #:ipv6-solicited-node-multicast-p
109 #:ipv6-transient-multicast-p
110 #:ipv6-unassigned-multicast-p
114 ;; Network masks and subnets
119 #:inet-address-private-p
120 #:inet-address-network-portion
121 #:inet-address-host-portion
122 #:inet-address-in-network-p
123 #:inet-addresses-in-same-network-p
124 #:inet-address-network-class
126 ;; Low-level Address Conversion
127 #:colon-separated-to-vector
132 #:string-address-to-vector
133 #:vector-to-colon-separated
136 #:map-ipv4-address-to-ipv6
137 #:map-ipv6-address-to-ipv4
139 ;; Hostname, Service, and Protocol Lookups
145 ;; Network Interface Lookup
146 #:list-network-interfaces
159 #:socket-datagram-internet-active
160 #:socket-datagram-local-active
161 #:socket-stream-internet-active
162 #:socket-stream-internet-passive
163 #:socket-stream-local-active
164 #:socket-stream-local-passive
179 #:make-socket-from-fd
181 #:receive-file-descriptor
187 #:send-file-descriptor
191 #:socket-address-family
198 #:with-accept-connection
201 #:*default-backlog-size
*
202 #:*default-linger-seconds
*
206 #:*dns-search-domain
*