Providing, probably, modern socket library.
Most of the bindings defined in this library is identical as
(sagittarius socket), so this document will describe only the
differences.
Returns #t if the given o is a socket-options,
tls-socket-options, or server-tls-socket-options, respectively.
The socket-options? returns #t for all 3 types.
Builds a socket-options object.
The field must be one or multiple of the followings:
See ai-family of (sagittarius socket)
See ai-socktype of (sagittarius socket)
See ai-flags of (sagittarius socket)
See ai-protocl of (sagittarius socket)
Specifies if the socket is non blocking or not, default #t
Specifies connection timeout in micro seconds, default #f (infinite)
Specifies read timeout, default #f (infinite) see socket-set-read-timeout! for more details.
Builds a tls-socket-options object.
The fields must be the ones from socket-options-builder or
one or multiple of the followings:
Specifes if handshake must be done or not. Default #t
A client private key
A list of client certificates, must be specified when private-key is specified
A certificate verifier procedure
A list of server name indicators, a list of string
A list of application layer protocol negotiation names
Builds a server-tls-socket-options object.
The fields must be the ones from tls-socket-options-builder or
one or multiple of the followings:
Specifes if client certificate is required or not. Default #f
A list of trusted certificates
Creates a client socket.
This is almost the same as the one from (sagittarius socket), the only
difference is it takes options to specify extra options, such as
read timeout or connection timeout.
Creates a client socket.
This is almost the same as the one from (rfc tls), the only
difference is it takes options to specify extra options, such as
client certificate, alpn, etc.
Creates a client socket.
This is almost the same as the one from (sagittarius socket), the only
difference is it takes options to specify extra options, such as
read timeout or connection timeout.
Creates a client socket.
This is almost the same as the one from (rfc tls), the only
difference is it takes options to specify extra options, such as
private key, etc.
Creates a client socket from the given options, node and service.
This is a convenient procedure to make a socket from the options instead of let user dispatch manually.