The optional {{sni-name}} argument determines whether a virtual hostname is sent with the connection handshake. if {{sni-name}} is a string, that value is sent as the virtual hostname. Otherwise, if {{sni-name}} is not {{#f}}, the value of {{hostname}} is sent as the virtual hostname, too.

Given existing TCP input and output ports, {{ssl-start*}} establishes an SSL context working on top of the TCP connection. The returned ports should be used for all further communication with the remote peer. {{ssl-start*}} acts similar to {{ssl-connect*}} if {{server?}} is false or to {{ssl-accept}} if {{server?}} is true. The arguments all behave analogous to those for {{ssl-connect*}} or {{ssl-listen*}}.