The usocket Reference Manual

Table of Contents

Next: , Previous: , Up: (dir)   [Contents][Index]

The usocket Reference Manual

This is the usocket Reference Manual, version 0.8.2, generated automatically by Declt version 2.4 patchlevel 1 "Will Decker" on Mon Jul 29 16:54:50 2019 GMT+0.


Next: , Previous: , Up: Top   [Contents][Index]

1 Introduction

USOCKET - Universal socket library for Common Lisp

https://common-lisp.net/project/usocket/

This is the usocket Common Lisp sockets library: a library to bring sockets access to the broadest of common lisp implementations as possible.

The library currently supports:

If your favorite common lisp misses in the list above, please contact usocket-devel@common-lisp.net and submit a request. Please include references to available sockets functions in your lisp implementation.

The library has been ASDF (http://cliki.net/ASDF) enabled, meaning that you can tar up a checkout and use that to ASDF-INSTALL:INSTALL the package in your system package site. (Or use your usual ASDF tricks to use the checkout directly.)

Remarks on licensing

Even though the source code has an MIT style license attached to it, when compiling this code with some of the supported lisp implementations you may not end up with an MIT style binary version due to the licensing of the implementations themselves. ECL is such an example and - when it will become supported - GCL is like that too.

Non-support of :external-format

Because of its definition in the hyperspec, there's no common external-format between lisp implementations: every vendor has chosen a different way to solve the problem of newline translation or character set recoding.

Because there's no way to avoid platform specific code in the application when using external-format, the purpose of a portability layer gets defeated. So, for now, usocket doesn't support external-format.

The workaround to get reasonably portable external-format support is to layer a flexi-stream (from flexi-streams) on top of a usocket stream.

API definition

Errors:

Non-fatal conditions:

(for a description of the API methods and functions see https://common-lisp.net/project/usocket/api-docs.shtml)

Test suite

The test suite unfortunately isn't mature enough yet to run without some manual configuration. Several elements are required which are hard to programatically detect. Please adjust the test file before running the tests, for these variables:

Known problems


Next: , Previous: , Up: Top   [Contents][Index]

2 Systems

The main system appears first, followed by any subsystem dependency.


Previous: , Up: Systems   [Contents][Index]

2.1 usocket


Next: , Previous: , Up: Top   [Contents][Index]

3 Modules

Modules are listed depth-first from the system components tree.


Next: , Previous: , Up: Modules   [Contents][Index]

3.1 usocket/vendor


Previous: , Up: Modules   [Contents][Index]

3.2 usocket/backend


Next: , Previous: , Up: Top   [Contents][Index]

4 Files

Files are sorted by type and then listed depth-first from the systems components trees.


Previous: , Up: Files   [Contents][Index]

4.1 Lisp


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.1 usocket.asd


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.2 usocket/package.lisp


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.3 usocket/usocket.lisp


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.4 usocket/condition.lisp


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.5 usocket/backend/sbcl.lisp


Previous: , Up: Lisp files   [Contents][Index]

4.1.6 usocket/option.lisp


Next: , Previous: , Up: Top   [Contents][Index]

5 Packages

Packages are listed by definition order.


Previous: , Up: Packages   [Contents][Index]

5.1 usocket


Next: , Previous: , Up: Top   [Contents][Index]

6 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.


Next: , Previous: , Up: Definitions   [Contents][Index]

6.1 Exported definitions


Next: , Previous: , Up: Exported definitions   [Contents][Index]

6.1.1 Constants

Constant: +max-datagram-packet-size+

The theoretical maximum amount of data in a UDP datagram.

The IPv4 UDP packets have a 16-bit length constraint, and IP+UDP header has 28-byte.

IP_MAXPACKET = 65535, /* netinet/ip.h */
sizeof(struct ip) = 20, /* netinet/ip.h */
sizeof(struct udphdr) = 8, /* netinet/udp.h */

65535 - 20 - 8 = 65507

(But for UDP broadcast, the maximum message size is limited by the MTU size of the underlying link)


Next: , Previous: , Up: Exported definitions   [Contents][Index]

6.1.2 Special variables

Special Variable: *auto-port*

Port number to pass when an auto-assigned port number is wanted.

Special Variable: *backend*
Special Variable: *version*

usocket version string

Special Variable: *wildcard-host*

Hostname to pass when all interfaces in the current system are to be bound. If this variable is passed to socket-listen, IPv6 capable systems will also listen for IPv6 connections.


Next: , Previous: , Up: Exported definitions   [Contents][Index]

6.1.3 Macros

Macro: ip-from-octet-buffer BUFFER &key START
Macro: ip-to-octet-buffer IP BUFFER &key START
Macro: port-from-octet-buffer BUFFER &key START
Macro: port-to-octet-buffer PORT BUFFER &key START
Macro: unimplemented FEATURE CONTEXT
Macro: unsupported FEATURE CONTEXT &key MINIMUM
Macro: with-client-socket (SOCKET-VAR STREAM-VAR &rest SOCKET-CONNECT-ARGS) &body BODY

Bind the socket resulting from a call to ‘socket-connect’ with
the arguments ‘socket-connect-args’ to ‘socket-var’ and if ‘stream-var’ is non-nil, bind the associated socket stream to it.

Macro: with-connected-socket (VAR SOCKET) &body BODY

Bind ‘socket’ to ‘var’, ensuring socket destruction on exit.

‘body’ is only evaluated when ‘var’ is bound to a non-null value.

The ‘body’ is an implied progn form.

Macro: with-mapped-conditions (&optional SOCKET HOST-OR-IP) &body BODY
Macro: with-server-socket (VAR SERVER-SOCKET) &body BODY

Bind ‘server-socket’ to ‘var’, ensuring socket destruction on exit.

‘body’ is only evaluated when ‘var’ is bound to a non-null value.

The ‘body’ is an implied progn form.

Macro: with-socket-listener (SOCKET-VAR &rest SOCKET-LISTEN-ARGS) &body BODY

Bind the socket resulting from a call to ‘socket-listen’ with arguments ‘socket-listen-args’ to ‘socket-var’.


Next: , Previous: , Up: Exported definitions   [Contents][Index]

6.1.4 Functions

Function: add-waiter WAIT-LIST INPUT
Function: datagram-usocket-p SOCKET
Function: dotted-quad-to-vector-quad STRING
Function: get-host-by-name NAME

0.7.1+: if there’re IPv4 addresses, return the first IPv4 address.

Function: get-hosts-by-name NAME
Function: get-random-host-by-name NAME

0.7.1+: if there’re IPv4 addresses, only return a random IPv4 address.

Function: hbo-to-dotted-quad INTEGER

Host-byte-order integer to dotted-quad string conversion utility.

Function: hbo-to-vector-quad INTEGER

Host-byte-order integer to dotted-quad string conversion utility.

Function: host-to-hostname HOST

Translate a string, vector quad or 16 byte IPv6 address to a stringified hostname.

Function: integer-to-octet-buffer INTEGER BUFFER OCTETS &key START
Function: ip/= IP1 IP2
Function: ip= IP1 IP2
Function: ipv6-host-to-vector STRING
Function: make-wait-list WAITERS
Function: octet-buffer-to-integer BUFFER OCTETS &key START
Function: remove-all-waiters WAIT-LIST
Function: remove-waiter WAIT-LIST INPUT
Function: socket-connect HOST PORT &key PROTOCOL ELEMENT-TYPE TIMEOUT DEADLINE NODELAY LOCAL-HOST LOCAL-PORT &aux SOCKOPT-TCP-NODELAY-P

Connect to ‘host’ on ‘port’. ‘host’ is assumed to be a string or
an IP address represented in vector notation, such as #(192 168 1 1).
‘port’ is assumed to be an integer.

‘element-type’ specifies the element type to use when constructing the
stream associated with the socket. The default is ’character.

‘nodelay’ Allows to disable/enable Nagle’s algorithm (http://en.wikipedia.org/wiki/Nagle%27s_algorithm). If this parameter is omitted, the behaviour is inherited from the
CL implementation (in most cases, Nagle’s algorithm is
enabled by default, but for example in ACL it is disabled).
If the parameter is specified, one of these three values is possible:
T - Disable Nagle’s algorithm; signals an UNSUPPORTED
condition if the implementation does not support explicit
manipulation with that option.
NIL - Leave Nagle’s algorithm enabled on the socket;
signals an UNSUPPORTED condition if the implementation does
not support explicit manipulation with that option.
:IF-SUPPORTED - Disables Nagle’s algorithm if the implementation
allows this, otherwises just ignore this option.

Returns a usocket object.

Function: socket-listen HOST PORT &key REUSEADDRESS REUSE-ADDRESS BACKLOG ELEMENT-TYPE

Bind to interface ‘host’ on ‘port’. ‘host’ should be the representation of an ready-interface address. The implementation is not required to do an address lookup, making no guarantees that hostnames will be correctly resolved. If ‘*wildcard-host*’ or NIL is passed for ‘host’, the socket will be bound to all available interfaces for the system. ‘port’ can be selected by the IP stack by passing ‘*auto-port*’.

Returns an object of type ‘stream-server-usocket’.

‘reuse-address’ and ‘backlog’ are advisory parameters for setting socket options at creation time. ‘element-type’ is the element type of the streams to be created by ‘socket-accept’. ‘reuseaddress’ is supported for backward compatibility (but deprecated); when both ‘reuseaddress’ and ‘reuse-address’ have been specified, the latter takes precedence.

Function: stream-server-usocket-p SOCKET
Function: stream-usocket-p SOCKET
Function: usocket-p SOCKET
Function: vector-quad-to-dotted-quad VECTOR
Function: vector-to-ipv6-host VECTOR
Function: wait-for-input SOCKET-OR-SOCKETS &key TIMEOUT READY-ONLY &aux SINGLE-SOCKET-P

Waits for one or more streams to become ready for reading from
the socket. When ‘timeout’ (a non-negative real number) is specified, wait ‘timeout’ seconds, or wait indefinitely when
it isn’t specified. A ‘timeout’ value of 0 (zero) means polling.

Returns two values: the first value is the list of streams which are readable (or in case of server streams acceptable). NIL may
be returned for this value either when waiting timed out or when
it was interrupted (EINTR). The second value is a real number indicating the time remaining within the timeout period or NIL if none.

Without the READY-ONLY arg, WAIT-FOR-INPUT will return all sockets in the original list you passed it. This prevents a new list from being consed up. Some users of USOCKET were reluctant to use it if it wouldn’t behave that way, expecting it to cost significant performance to do the associated garbage collection.

Without the READY-ONLY arg, you need to check the socket STATE slot for the values documented in usocket.lisp in the usocket class.


Next: , Previous: , Up: Exported definitions   [Contents][Index]

6.1.5 Generic functions

Generic Function: get-local-address SOCKET

Returns the IP address of the socket.

Generic Function: get-local-name SOCKET

Returns the IP address and port of the socket as values.

This function applies to both ‘stream-usocket’ and ‘server-stream-usocket’ type objects.

Generic Function: get-local-port SOCKET

Returns the IP port of the socket.

This function applies to both ‘stream-usocket’ and ‘server-stream-usocket’ type objects.

Generic Function: get-peer-address SOCKET

Returns the IP address of the peer the socket is connected to.

Generic Function: get-peer-name SOCKET

Returns the IP address and port of the peer the socket is connected to as values.

Generic Function: get-peer-port SOCKET

Returns the IP port of the peer the socket to.

Generic Function: host-byte-order ADDRESS
Generic Function: host-or-ip CONDITION
Generic Function: (setf host-or-ip) NEW-VALUE CONDITION
Generic Function: socket OBJECT
Generic Function: (setf socket) NEW-VALUE OBJECT
Generic Function: socket-accept SOCKET &key ELEMENT-TYPE

Accepts a connection from ‘socket’, returning a ‘stream-socket’.

The stream associated with the socket returned has ‘element-type’ when explicitly specified, or the element-type passed to ‘socket-listen’ otherwise.

Generic Function: socket-close USOCKET

Close a previously opened ‘usocket’.

Generic Function: socket-option SOCKET OPTION &key

Get a socket’s internal options

Generic Function: (setf socket-option) NEW-VALUE SOCKET OPTION &key

Set a socket’s internal options

Generic Function: socket-receive USOCKET BUFFER LENGTH &key ELEMENT-TYPE

Receive packets from a previously opend ‘usocket’.

Returns 4 values: (values buffer size host port)

Generic Function: socket-send USOCKET BUFFER LENGTH &key HOST PORT OFFSET

Send packets through a previously opend ‘usocket’.

Generic Function: socket-shutdown USOCKET DIRECTION

Shutdown communication on the socket in DIRECTION.

After a shutdown no input and/or output of the indicated DIRECTION can be performed on the ‘usocket’.

DIRECTION should be either :INPUT or :OUTPUT or :IO

Generic Function: socket-state SOCKET

NIL - not ready
:READ - ready to read :READ-WRITE - ready to read and write :WRITE - ready to write

Generic Function: socket-stream OBJECT
Generic Function: (setf socket-stream) NEW-VALUE OBJECT

Next: , Previous: , Up: Exported definitions   [Contents][Index]

6.1.6 Conditions

Condition: address-in-use-error ()
Condition: address-not-available-error ()
Condition: bad-file-descriptor-error ()
Condition: connection-aborted-error ()
Condition: connection-refused-error ()
Condition: connection-reset-error ()
Condition: deadline-timeout-error ()
Condition: host-down-error ()
Condition: host-unreachable-error ()
Condition: insufficient-implementation ()

The ancestor of all errors usocket may generate
because of insufficient support from the underlying implementation with respect to the arguments given to ‘function’.

One call may signal several errors, if the caller allows processing to continue.

Condition: interrupted-condition ()
Condition: invalid-argument-error ()
Condition: invalid-socket-error ()
Condition: invalid-socket-stream-error ()
Condition: network-down-error ()
Condition: network-reset-error ()
Condition: network-unreachable-error ()
Condition: no-buffers-error ()
Condition: ns-condition ()

Parent condition for all name resolution conditions.

Condition: ns-error ()

Parent error for all name resolution errors.

Condition: ns-host-not-found-error ()
Condition: ns-no-recovery-error ()
Condition: ns-try-again-condition ()
Condition: ns-unknown-condition ()

Condition raised when there’s no other - more applicable - condition available.

Condition: ns-unknown-error ()

Error raised when there’s no other - more applicable - error available.

Condition: operation-not-permitted-error ()
Condition: operation-not-supported-error ()
Condition: protocol-not-supported-error ()
Condition: shutdown-error ()
Condition: socket-condition ()

Parent condition for all socket related conditions.

Condition: socket-error ()

Parent error for all socket related errors

Condition: socket-type-not-supported-error ()
Condition: timeout-error ()
Condition: unimplemented ()

Signalled if a certain feature might be implemented,
based on the features of the underlying implementation, but hasn’t been implemented yet.

Condition: unknown-condition ()

Condition raised when there’s no other - more applicable - condition available.

Condition: unknown-error ()

Error raised when there’s no other - more applicable - error available.

Condition: unsupported ()

Signalled when the underlying implementation
doesn’t allow supporting the requested feature.

When you see this error, go bug your vendor/implementation developer!


Previous: , Up: Exported definitions   [Contents][Index]

6.1.7 Classes

Class: datagram-usocket ()

UDP (inet-datagram) socket

Class: stream-server-usocket ()

Socket which listens for stream connections to be initiated from remote sockets.

Class: stream-usocket ()

Stream socket class.

Contrary to other sockets, these sockets may be closed either with the ‘socket-close’ method or by closing the associated stream (which can be retrieved with the ‘socket-stream’ accessor).

Class: usocket ()

The main socket class.

Sockets should be closed using the ‘socket-close’ method.


Previous: , Up: Definitions   [Contents][Index]

6.2 Internal definitions


Next: , Previous: , Up: Internal definitions   [Contents][Index]

6.2.1 Special variables

Special Variable: *dummy-stream*
Special Variable: +sbcl-condition-map+
Special Variable: +sbcl-error-map+
Special Variable: +unix-errno-condition-map+
Special Variable: +unix-errno-error-map+
Special Variable: +unix-ns-error-map+

Next: , Previous: , Up: Internal definitions   [Contents][Index]

6.2.2 Macros

Macro: %with-timeout (SECONDS TIMEOUT-FORM) &body BODY

Runs BODY as an implicit PROGN with timeout of SECONDS. If timeout occurs before BODY has finished, BODY is unwound and TIMEOUT-FORM is executed with its values returned instead.

Note that BODY is unwound asynchronously when a timeout occurs, so unless all code executed during it – including anything down the call chain – is asynch unwind safe, bad things will happen. Use with care.

Macro: define-usocket-condition-classes CLASS-LIST PARENTS
Macro: ignore-unsupported-warnings &body BODY

Next: , Previous: , Up: Internal definitions   [Contents][Index]

6.2.3 Functions

Function: %add-waiter WAIT-LIST WAITER
Function: %make-wait-list &key (%WAIT %WAIT) (WAITERS WAITERS) (MAP MAP)
Function: %remove-waiter WAIT-LIST WAITER
Function: %setup-wait-list WAIT-LIST
Function: bool->int BOOL
Function: copy-wait-list INSTANCE
Function: define-usocket-condition-class CLASS &rest PARENTS
Function: get-host-by-address ADDRESS
Function: get-host-name ()
Function: handle-condition CONDITION &optional SOCKET HOST-OR-IP

Dispatch correct usocket condition.

Function: host-to-hbo HOST
Function: host-to-vector-quad HOST

Translate a host specification (vector quad, dotted quad or domain name) to a vector quad.

Function: int->bool INT
Function: ip-address-string-p STRING

Return a true value if the given string could be an IP address.

Function: list-of-strings-to-integers LIST

Take a list of strings and return a new list of integers (from parse-integer) on each of the string elements.

Function: make-datagram-socket SOCKET &key CONNECTED-P
Function: make-socket &key SOCKET

Create a usocket socket type from implementation specific socket.

Function: make-stream-server-socket SOCKET &key ELEMENT-TYPE

Create a usocket-server socket type from an implementation-specific socket object.

The returned value is a subtype of ‘stream-server-usocket’.

Function: make-stream-socket &key SOCKET STREAM

Create a usocket socket type from implementation specific socket and stream objects.

Sockets returned should be closed using the ‘socket-close’ method or by closing the stream associated with the socket.

Function: map-errno-condition ERRNO
Function: map-errno-error ERRNO
Function: map-socket-error SOCK-ERR
Function: split-ipv6-address STRING
Function: split-timeout TIMEOUT &optional FRACTIONAL

Split real value timeout into seconds and microseconds. Optionally, a different fractional part can be specified.

Function: wait-for-input-internal SOCKETS &key TIMEOUT
Function: wait-list-%wait INSTANCE
Function: (setf wait-list-%wait) VALUE INSTANCE
Function: wait-list-map INSTANCE
Function: (setf wait-list-map) VALUE INSTANCE
Function: wait-list-p OBJECT
Function: wait-list-waiters INSTANCE
Function: (setf wait-list-waiters) VALUE INSTANCE

Next: , Previous: , Up: Internal definitions   [Contents][Index]

6.2.4 Generic functions

Generic Function: connected-p OBJECT
Generic Function: (setf connected-p) NEW-VALUE OBJECT
Generic Function: context CONDITION
Generic Function: element-type OBJECT
Generic Function: feature CONDITION
Generic Function: minimum CONDITION
Generic Function: ns-real-condition CONDITION
Generic Function: (setf ns-real-condition) NEW-VALUE CONDITION
Generic Function: ns-real-error CONDITION
Generic Function: (setf ns-real-error) NEW-VALUE CONDITION
Generic Function: state OBJECT
Generic Function: (setf state) NEW-VALUE OBJECT
Generic Function: usocket-errno CONDITION
Generic Function: usocket-real-condition CONDITION
Generic Function: (setf usocket-real-condition) NEW-VALUE CONDITION
Generic Function: usocket-real-error CONDITION
Generic Function: (setf usocket-real-error) NEW-VALUE CONDITION
Generic Function: usocket-socket CONDITION
Generic Function: (setf usocket-socket) NEW-VALUE CONDITION
Generic Function: wait-list OBJECT
Generic Function: (setf wait-list) NEW-VALUE OBJECT

Previous: , Up: Internal definitions   [Contents][Index]

6.2.5 Structures

Structure: wait-list ()

Previous: , Up: Top   [Contents][Index]

Appendix A Indexes


Next: , Previous: , Up: Indexes   [Contents][Index]

A.1 Concepts

Jump to:   F   L   M   U  
Index Entry  Section

F
File, Lisp, usocket.asd: The usocket<dot>asd file
File, Lisp, usocket/backend/sbcl.lisp: The usocket/backend/sbcl<dot>lisp file
File, Lisp, usocket/condition.lisp: The usocket/condition<dot>lisp file
File, Lisp, usocket/option.lisp: The usocket/option<dot>lisp file
File, Lisp, usocket/package.lisp: The usocket/package<dot>lisp file
File, Lisp, usocket/usocket.lisp: The usocket/usocket<dot>lisp file

L
Lisp File, usocket.asd: The usocket<dot>asd file
Lisp File, usocket/backend/sbcl.lisp: The usocket/backend/sbcl<dot>lisp file
Lisp File, usocket/condition.lisp: The usocket/condition<dot>lisp file
Lisp File, usocket/option.lisp: The usocket/option<dot>lisp file
Lisp File, usocket/package.lisp: The usocket/package<dot>lisp file
Lisp File, usocket/usocket.lisp: The usocket/usocket<dot>lisp file

M
Module, usocket/backend: The usocket/backend module
Module, usocket/vendor: The usocket/vendor module

U
usocket.asd: The usocket<dot>asd file
usocket/backend: The usocket/backend module
usocket/backend/sbcl.lisp: The usocket/backend/sbcl<dot>lisp file
usocket/condition.lisp: The usocket/condition<dot>lisp file
usocket/option.lisp: The usocket/option<dot>lisp file
usocket/package.lisp: The usocket/package<dot>lisp file
usocket/usocket.lisp: The usocket/usocket<dot>lisp file
usocket/vendor: The usocket/vendor module

Jump to:   F   L   M   U  

Next: , Previous: , Up: Indexes   [Contents][Index]

A.2 Functions

Jump to:   %   (  
A   B   C   D   E   F   G   H   I   L   M   N   O   P   R   S   U   V   W  
Index Entry  Section

%
%add-waiter: Internal functions
%make-wait-list: Internal functions
%remove-waiter: Internal functions
%setup-wait-list: Internal functions
%with-timeout: Internal macros

(
(setf connected-p): Internal generic functions
(setf connected-p): Internal generic functions
(setf host-or-ip): Exported generic functions
(setf host-or-ip): Exported generic functions
(setf ns-real-condition): Internal generic functions
(setf ns-real-condition): Internal generic functions
(setf ns-real-error): Internal generic functions
(setf ns-real-error): Internal generic functions
(setf socket): Exported generic functions
(setf socket): Exported generic functions
(setf socket-option): Exported generic functions
(setf socket-option): Exported generic functions
(setf socket-option): Exported generic functions
(setf socket-option): Exported generic functions
(setf socket-option): Exported generic functions
(setf socket-option): Exported generic functions
(setf socket-option): Exported generic functions
(setf socket-option): Exported generic functions
(setf socket-option): Exported generic functions
(setf socket-stream): Exported generic functions
(setf socket-stream): Exported generic functions
(setf state): Internal generic functions
(setf state): Internal generic functions
(setf usocket-real-condition): Internal generic functions
(setf usocket-real-condition): Internal generic functions
(setf usocket-real-error): Internal generic functions
(setf usocket-real-error): Internal generic functions
(setf usocket-socket): Internal generic functions
(setf usocket-socket): Internal generic functions
(setf wait-list): Internal generic functions
(setf wait-list): Internal generic functions
(setf wait-list-%wait): Internal functions
(setf wait-list-map): Internal functions
(setf wait-list-waiters): Internal functions

A
add-waiter: Exported functions

B
bool->int: Internal functions

C
connected-p: Internal generic functions
connected-p: Internal generic functions
context: Internal generic functions
context: Internal generic functions
copy-wait-list: Internal functions

D
datagram-usocket-p: Exported functions
define-usocket-condition-class: Internal functions
define-usocket-condition-classes: Internal macros
dotted-quad-to-vector-quad: Exported functions

E
element-type: Internal generic functions
element-type: Internal generic functions

F
feature: Internal generic functions
feature: Internal generic functions
Function, %add-waiter: Internal functions
Function, %make-wait-list: Internal functions
Function, %remove-waiter: Internal functions
Function, %setup-wait-list: Internal functions
Function, (setf wait-list-%wait): Internal functions
Function, (setf wait-list-map): Internal functions
Function, (setf wait-list-waiters): Internal functions
Function, add-waiter: Exported functions
Function, bool->int: Internal functions
Function, copy-wait-list: Internal functions
Function, datagram-usocket-p: Exported functions
Function, define-usocket-condition-class: Internal functions
Function, dotted-quad-to-vector-quad: Exported functions
Function, get-host-by-address: Internal functions
Function, get-host-by-name: Exported functions
Function, get-host-name: Internal functions
Function, get-hosts-by-name: Exported functions
Function, get-random-host-by-name: Exported functions
Function, handle-condition: Internal functions
Function, hbo-to-dotted-quad: Exported functions
Function, hbo-to-vector-quad: Exported functions
Function, host-to-hbo: Internal functions
Function, host-to-hostname: Exported functions
Function, host-to-vector-quad: Internal functions
Function, int->bool: Internal functions
Function, integer-to-octet-buffer: Exported functions
Function, ip-address-string-p: Internal functions
Function, ip/=: Exported functions
Function, ip=: Exported functions
Function, ipv6-host-to-vector: Exported functions
Function, list-of-strings-to-integers: Internal functions
Function, make-datagram-socket: Internal functions
Function, make-socket: Internal functions
Function, make-stream-server-socket: Internal functions
Function, make-stream-socket: Internal functions
Function, make-wait-list: Exported functions
Function, map-errno-condition: Internal functions
Function, map-errno-error: Internal functions
Function, map-socket-error: Internal functions
Function, octet-buffer-to-integer: Exported functions
Function, remove-all-waiters: Exported functions
Function, remove-waiter: Exported functions
Function, socket-connect: Exported functions
Function, socket-listen: Exported functions
Function, split-ipv6-address: Internal functions
Function, split-timeout: Internal functions
Function, stream-server-usocket-p: Exported functions
Function, stream-usocket-p: Exported functions
Function, usocket-p: Exported functions
Function, vector-quad-to-dotted-quad: Exported functions
Function, vector-to-ipv6-host: Exported functions
Function, wait-for-input: Exported functions
Function, wait-for-input-internal: Internal functions
Function, wait-list-%wait: Internal functions
Function, wait-list-map: Internal functions
Function, wait-list-p: Internal functions
Function, wait-list-waiters: Internal functions

G
Generic Function, (setf connected-p): Internal generic functions
Generic Function, (setf host-or-ip): Exported generic functions
Generic Function, (setf ns-real-condition): Internal generic functions
Generic Function, (setf ns-real-error): Internal generic functions
Generic Function, (setf socket): Exported generic functions
Generic Function, (setf socket-option): Exported generic functions
Generic Function, (setf socket-stream): Exported generic functions
Generic Function, (setf state): Internal generic functions
Generic Function, (setf usocket-real-condition): Internal generic functions
Generic Function, (setf usocket-real-error): Internal generic functions
Generic Function, (setf usocket-socket): Internal generic functions
Generic Function, (setf wait-list): Internal generic functions
Generic Function, connected-p: Internal generic functions
Generic Function, context: Internal generic functions
Generic Function, element-type: Internal generic functions
Generic Function, feature: Internal generic functions
Generic Function, get-local-address: Exported generic functions
Generic Function, get-local-name: Exported generic functions
Generic Function, get-local-port: Exported generic functions
Generic Function, get-peer-address: Exported generic functions
Generic Function, get-peer-name: Exported generic functions
Generic Function, get-peer-port: Exported generic functions
Generic Function, host-byte-order: Exported generic functions
Generic Function, host-or-ip: Exported generic functions
Generic Function, minimum: Internal generic functions
Generic Function, ns-real-condition: Internal generic functions
Generic Function, ns-real-error: Internal generic functions
Generic Function, socket: Exported generic functions
Generic Function, socket-accept: Exported generic functions
Generic Function, socket-close: Exported generic functions
Generic Function, socket-option: Exported generic functions
Generic Function, socket-receive: Exported generic functions
Generic Function, socket-send: Exported generic functions
Generic Function, socket-shutdown: Exported generic functions
Generic Function, socket-state: Exported generic functions
Generic Function, socket-stream: Exported generic functions
Generic Function, state: Internal generic functions
Generic Function, usocket-errno: Internal generic functions
Generic Function, usocket-real-condition: Internal generic functions
Generic Function, usocket-real-error: Internal generic functions
Generic Function, usocket-socket: Internal generic functions
Generic Function, wait-list: Internal generic functions
get-host-by-address: Internal functions
get-host-by-name: Exported functions
get-host-name: Internal functions
get-hosts-by-name: Exported functions
get-local-address: Exported generic functions
get-local-address: Exported generic functions
get-local-name: Exported generic functions
get-local-name: Exported generic functions
get-local-port: Exported generic functions
get-local-port: Exported generic functions
get-peer-address: Exported generic functions
get-peer-address: Exported generic functions
get-peer-name: Exported generic functions
get-peer-name: Exported generic functions
get-peer-port: Exported generic functions
get-peer-port: Exported generic functions
get-random-host-by-name: Exported functions

H
handle-condition: Internal functions
hbo-to-dotted-quad: Exported functions
hbo-to-vector-quad: Exported functions
host-byte-order: Exported generic functions
host-byte-order: Exported generic functions
host-byte-order: Exported generic functions
host-byte-order: Exported generic functions
host-or-ip: Exported generic functions
host-or-ip: Exported generic functions
host-to-hbo: Internal functions
host-to-hostname: Exported functions
host-to-vector-quad: Internal functions

I
ignore-unsupported-warnings: Internal macros
int->bool: Internal functions
integer-to-octet-buffer: Exported functions
ip-address-string-p: Internal functions
ip-from-octet-buffer: Exported macros
ip-to-octet-buffer: Exported macros
ip/=: Exported functions
ip=: Exported functions
ipv6-host-to-vector: Exported functions

L
list-of-strings-to-integers: Internal functions

M
Macro, %with-timeout: Internal macros
Macro, define-usocket-condition-classes: Internal macros
Macro, ignore-unsupported-warnings: Internal macros
Macro, ip-from-octet-buffer: Exported macros
Macro, ip-to-octet-buffer: Exported macros
Macro, port-from-octet-buffer: Exported macros
Macro, port-to-octet-buffer: Exported macros
Macro, unimplemented: Exported macros
Macro, unsupported: Exported macros
Macro, with-client-socket: Exported macros
Macro, with-connected-socket: Exported macros
Macro, with-mapped-conditions: Exported macros
Macro, with-server-socket: Exported macros
Macro, with-socket-listener: Exported macros
make-datagram-socket: Internal functions
make-socket: Internal functions
make-stream-server-socket: Internal functions
make-stream-socket: Internal functions
make-wait-list: Exported functions
map-errno-condition: Internal functions
map-errno-error: Internal functions
map-socket-error: Internal functions
Method, (setf connected-p): Internal generic functions
Method, (setf host-or-ip): Exported generic functions
Method, (setf ns-real-condition): Internal generic functions
Method, (setf ns-real-error): Internal generic functions
Method, (setf socket): Exported generic functions
Method, (setf socket-option): Exported generic functions
Method, (setf socket-option): Exported generic functions
Method, (setf socket-option): Exported generic functions
Method, (setf socket-option): Exported generic functions
Method, (setf socket-option): Exported generic functions
Method, (setf socket-option): Exported generic functions
Method, (setf socket-option): Exported generic functions
Method, (setf socket-option): Exported generic functions
Method, (setf socket-stream): Exported generic functions
Method, (setf state): Internal generic functions
Method, (setf usocket-real-condition): Internal generic functions
Method, (setf usocket-real-error): Internal generic functions
Method, (setf usocket-socket): Internal generic functions
Method, (setf wait-list): Internal generic functions
Method, connected-p: Internal generic functions
Method, context: Internal generic functions
Method, element-type: Internal generic functions
Method, feature: Internal generic functions
Method, get-local-address: Exported generic functions
Method, get-local-name: Exported generic functions
Method, get-local-port: Exported generic functions
Method, get-peer-address: Exported generic functions
Method, get-peer-name: Exported generic functions
Method, get-peer-port: Exported generic functions
Method, host-byte-order: Exported generic functions
Method, host-byte-order: Exported generic functions
Method, host-byte-order: Exported generic functions
Method, host-or-ip: Exported generic functions
Method, minimum: Internal generic functions
Method, ns-real-condition: Internal generic functions
Method, ns-real-error: Internal generic functions
Method, socket: Exported generic functions
Method, socket-accept: Exported generic functions
Method, socket-close: Exported generic functions
Method, socket-close: Exported generic functions
Method, socket-close: Exported generic functions
Method, socket-option: Exported generic functions
Method, socket-option: Exported generic functions
Method, socket-option: Exported generic functions
Method, socket-option: Exported generic functions
Method, socket-option: Exported generic functions
Method, socket-option: Exported generic functions
Method, socket-option: Exported generic functions
Method, socket-option: Exported generic functions
Method, socket-receive: Exported generic functions
Method, socket-send: Exported generic functions
Method, socket-shutdown: Exported generic functions
Method, socket-state: Exported generic functions
Method, socket-stream: Exported generic functions
Method, state: Internal generic functions
Method, usocket-errno: Internal generic functions
Method, usocket-real-condition: Internal generic functions
Method, usocket-real-error: Internal generic functions
Method, usocket-socket: Internal generic functions
Method, wait-list: Internal generic functions
minimum: Internal generic functions
minimum: Internal generic functions

N
ns-real-condition: Internal generic functions
ns-real-condition: Internal generic functions
ns-real-error: Internal generic functions
ns-real-error: Internal generic functions

O
octet-buffer-to-integer: Exported functions

P
port-from-octet-buffer: Exported macros
port-to-octet-buffer: Exported macros

R
remove-all-waiters: Exported functions
remove-waiter: Exported functions

S
socket: Exported generic functions
socket: Exported generic functions
socket-accept: Exported generic functions
socket-accept: Exported generic functions
socket-close: Exported generic functions
socket-close: Exported generic functions
socket-close: Exported generic functions
socket-close: Exported generic functions
socket-connect: Exported functions
socket-listen: Exported functions
socket-option: Exported generic functions
socket-option: Exported generic functions
socket-option: Exported generic functions
socket-option: Exported generic functions
socket-option: Exported generic functions
socket-option: Exported generic functions
socket-option: Exported generic functions
socket-option: Exported generic functions
socket-option: Exported generic functions
socket-receive: Exported generic functions
socket-receive: Exported generic functions
socket-send: Exported generic functions
socket-send: Exported generic functions
socket-shutdown: Exported generic functions
socket-shutdown: Exported generic functions
socket-state: Exported generic functions
socket-state: Exported generic functions
socket-stream: Exported generic functions
socket-stream: Exported generic functions
split-ipv6-address: Internal functions
split-timeout: Internal functions
state: Internal generic functions
state: Internal generic functions
stream-server-usocket-p: Exported functions
stream-usocket-p: Exported functions

U
unimplemented: Exported macros
unsupported: Exported macros
usocket-errno: Internal generic functions
usocket-errno: Internal generic functions
usocket-p: Exported functions
usocket-real-condition: Internal generic functions
usocket-real-condition: Internal generic functions
usocket-real-error: Internal generic functions
usocket-real-error: Internal generic functions
usocket-socket: Internal generic functions
usocket-socket: Internal generic functions

V
vector-quad-to-dotted-quad: Exported functions
vector-to-ipv6-host: Exported functions

W
wait-for-input: Exported functions
wait-for-input-internal: Internal functions
wait-list: Internal generic functions
wait-list: Internal generic functions
wait-list-%wait: Internal functions
wait-list-map: Internal functions
wait-list-p: Internal functions
wait-list-waiters: Internal functions
with-client-socket: Exported macros
with-connected-socket: Exported macros
with-mapped-conditions: Exported macros
with-server-socket: Exported macros
with-socket-listener: Exported macros

Jump to:   %   (  
A   B   C   D   E   F   G   H   I   L   M   N   O   P   R   S   U   V   W  

Next: , Previous: , Up: Indexes   [Contents][Index]

A.3 Variables

Jump to:   %   *   +  
C   E   F   H   M   R   S   W  
Index Entry  Section

%
%wait: Internal structures

*
*auto-port*: Exported special variables
*backend*: Exported special variables
*dummy-stream*: Internal special variables
*version*: Exported special variables
*wildcard-host*: Exported special variables

+
+max-datagram-packet-size+: Exported constants
+sbcl-condition-map+: Internal special variables
+sbcl-error-map+: Internal special variables
+unix-errno-condition-map+: Internal special variables
+unix-errno-error-map+: Internal special variables
+unix-ns-error-map+: Internal special variables

C
connected-p: Exported classes
Constant, +max-datagram-packet-size+: Exported constants
context: Exported conditions

E
element-type: Exported classes
errno: Exported conditions

F
feature: Exported conditions

H
host-or-ip: Exported conditions

M
map: Internal structures
minimum: Exported conditions

R
real-condition: Exported conditions
real-condition: Exported conditions
real-error: Exported conditions
real-error: Exported conditions

S
Slot, %wait: Internal structures
Slot, connected-p: Exported classes
Slot, context: Exported conditions
Slot, element-type: Exported classes
Slot, errno: Exported conditions
Slot, feature: Exported conditions
Slot, host-or-ip: Exported conditions
Slot, map: Internal structures
Slot, minimum: Exported conditions
Slot, real-condition: Exported conditions
Slot, real-condition: Exported conditions
Slot, real-error: Exported conditions
Slot, real-error: Exported conditions
Slot, socket: Exported conditions
Slot, socket: Exported classes
Slot, state: Exported classes
Slot, stream: Exported classes
Slot, wait-list: Exported classes
Slot, waiters: Internal structures
socket: Exported conditions
socket: Exported classes
Special Variable, *auto-port*: Exported special variables
Special Variable, *backend*: Exported special variables
Special Variable, *dummy-stream*: Internal special variables
Special Variable, *version*: Exported special variables
Special Variable, *wildcard-host*: Exported special variables
Special Variable, +sbcl-condition-map+: Internal special variables
Special Variable, +sbcl-error-map+: Internal special variables
Special Variable, +unix-errno-condition-map+: Internal special variables
Special Variable, +unix-errno-error-map+: Internal special variables
Special Variable, +unix-ns-error-map+: Internal special variables
state: Exported classes
stream: Exported classes

W
wait-list: Exported classes
waiters: Internal structures

Jump to:   %   *   +  
C   E   F   H   M   R   S   W  

Previous: , Up: Indexes   [Contents][Index]

A.4 Data types

Jump to:   A   B   C   D   H   I   N   O   P   S   T   U   W  
Index Entry  Section

A
address-in-use-error: Exported conditions
address-not-available-error: Exported conditions

B
bad-file-descriptor-error: Exported conditions

C
Class, datagram-usocket: Exported classes
Class, stream-server-usocket: Exported classes
Class, stream-usocket: Exported classes
Class, usocket: Exported classes
Condition, address-in-use-error: Exported conditions
Condition, address-not-available-error: Exported conditions
Condition, bad-file-descriptor-error: Exported conditions
Condition, connection-aborted-error: Exported conditions
Condition, connection-refused-error: Exported conditions
Condition, connection-reset-error: Exported conditions
Condition, deadline-timeout-error: Exported conditions
Condition, host-down-error: Exported conditions
Condition, host-unreachable-error: Exported conditions
Condition, insufficient-implementation: Exported conditions
Condition, interrupted-condition: Exported conditions
Condition, invalid-argument-error: Exported conditions
Condition, invalid-socket-error: Exported conditions
Condition, invalid-socket-stream-error: Exported conditions
Condition, network-down-error: Exported conditions
Condition, network-reset-error: Exported conditions
Condition, network-unreachable-error: Exported conditions
Condition, no-buffers-error: Exported conditions
Condition, ns-condition: Exported conditions
Condition, ns-error: Exported conditions
Condition, ns-host-not-found-error: Exported conditions
Condition, ns-no-recovery-error: Exported conditions
Condition, ns-try-again-condition: Exported conditions
Condition, ns-unknown-condition: Exported conditions
Condition, ns-unknown-error: Exported conditions
Condition, operation-not-permitted-error: Exported conditions
Condition, operation-not-supported-error: Exported conditions
Condition, protocol-not-supported-error: Exported conditions
Condition, shutdown-error: Exported conditions
Condition, socket-condition: Exported conditions
Condition, socket-error: Exported conditions
Condition, socket-type-not-supported-error: Exported conditions
Condition, timeout-error: Exported conditions
Condition, unimplemented: Exported conditions
Condition, unknown-condition: Exported conditions
Condition, unknown-error: Exported conditions
Condition, unsupported: Exported conditions
connection-aborted-error: Exported conditions
connection-refused-error: Exported conditions
connection-reset-error: Exported conditions

D
datagram-usocket: Exported classes
deadline-timeout-error: Exported conditions

H
host-down-error: Exported conditions
host-unreachable-error: Exported conditions

I
insufficient-implementation: Exported conditions
interrupted-condition: Exported conditions
invalid-argument-error: Exported conditions
invalid-socket-error: Exported conditions
invalid-socket-stream-error: Exported conditions

N
network-down-error: Exported conditions
network-reset-error: Exported conditions
network-unreachable-error: Exported conditions
no-buffers-error: Exported conditions
ns-condition: Exported conditions
ns-error: Exported conditions
ns-host-not-found-error: Exported conditions
ns-no-recovery-error: Exported conditions
ns-try-again-condition: Exported conditions
ns-unknown-condition: Exported conditions
ns-unknown-error: Exported conditions

O
operation-not-permitted-error: Exported conditions
operation-not-supported-error: Exported conditions

P
Package, usocket: The usocket package
protocol-not-supported-error: Exported conditions

S
shutdown-error: Exported conditions
socket-condition: Exported conditions
socket-error: Exported conditions
socket-type-not-supported-error: Exported conditions
stream-server-usocket: Exported classes
stream-usocket: Exported classes
Structure, wait-list: Internal structures
System, usocket: The usocket system

T
timeout-error: Exported conditions

U
unimplemented: Exported conditions
unknown-condition: Exported conditions
unknown-error: Exported conditions
unsupported: Exported conditions
usocket: The usocket system
usocket: The usocket package
usocket: Exported classes

W
wait-list: Internal structures

Jump to:   A   B   C   D   H   I   N   O   P   S   T   U   W