Extract the SSL failure from the failure argument list of an asynchronous I/O callback.
comm
async-io-ssl-failure-indicator-from-failure-args failure-args => ssl-failure-indicator
failure-args⇩ |
Any Lisp object. |
ssl-failure-indicator⇩ | |
The function async-io-ssl-failure-indicator-from-failure-args
is intended to be called with the failure arguments list that callback in create-async-io-state-and-connected-tcp-socket and async-io-state-attach-ssl receives as its second argument when a failure occurs. async-io-ssl-failure-indicator-from-failure-args
checks if failure-args was generated as such an argument, and if it was, extracts the error indicator from it. ssl-failure-indicator is :timeout
if the handshake timed out, :closed
if the socket was closed (with a proper shutdown) during the handshake, or a ssl-condition for other SSL failures. ssl-failure-indicator is nil
if some other error occured, for example failure to connect.
async-io-ssl-failure-indicator-from-failure-args
is needed because the argument to callback in create-async-io-state-and-connected-tcp-socket and async-io-state-attach-ssl is a list of arguments for format, which is intended for printing/logging. async-io-ssl-failure-indicator-from-failure-args
makes it easier to decide programmatically what the reason for failure is.
25.8.8 Errors in SSL
create-async-io-state-and-connected-tcp-socket
async-io-state-attach-ssl
LispWorks® User Guide and Reference Manual - 01 Dec 2021 19:30:26