Attaches SSL to an async-io-state that contains a TCP socket.
async-io-state-attach-ssl async-io-state callback &key ssl-side ssl-ctx ctx-configure-callback ssl-configure-callback
An async-io-state.
A function designator for a function with two arguments.
One of the keywords :client
, :server
or :both
.
A symbol or a foreign pointer.
A function designator or nil
. The default value is nil
.
The function async-io-state-attach-ssl
attaches SSL to async-io-state, which must contain a TCP socket, typically the result of create-async-io-state or a state created by accept-tcp-connections-creating-async-io-states. async-io-state must not have SSL attached to it already.
ssl-side, ssl-ctx, ctx-configure-callback, ssl-configure-callback and handshake-timeout are interpreted as described in Keyword arguments for use with SSL. ssl-ctx defaults to t
and ssl-side defaults to :server
.
When SSL has been attached successfully or otherwise, callback is called with two arguments: async-io-state and an error-indicator. The error-indicator is nil
when successful, otherwise it is a list of a format control-string and args, suitable for applying to format
. When the error-indicator is non-nil, async-io-state is not attached to SSL.
async-io-state-attach-ssl
must not be called when there is any other operation on async-io-state and new operations on async-io-state must not be started until callback has been called.
create-async-io-state-and-connected-tcp-socket and accept-tcp-connections-creating-async-io-states can attach SSL themselves, and in most cases that is the best way to do it. async-io-state-attach-ssl
allows the attachment to be done later.
create-async-io-state-and-connected-tcp-socket
accept-tcp-connections-creating-async-io-states
async-io-state-detach-ssl
Using Asynchronous I/O with SSL
LispWorks User Guide and Reference Manual - 20 Sep 2017