# Method SSL.sslfile()->create()

Method create

  `SSL.sslfile SSL.sslfile(Stdio.File stream, SSL.context ctx, int|void is_client, int|void is_blocking, SSL.Constants.ProtocolVersion|void min_version, SSL.Constants.ProtocolVersion|void max_version)`

Description

  Create an SSL connection over an open stream.

Parameter `stream`

  Open socket or pipe to create the connection over.

Parameter `ctx`

  The SSL context.

Parameter `is_client`

  If is set then a client-side connection is started, server-side otherwise.

Parameter `is_blocking`

  If is set then the stream is initially set in blocking mode, nonblocking mode otherwise.

Parameter `min_version`

  The minimum minor version of SSL to support. Defaults to PROTOCOL_SSL_3_0.

Parameter `max_version`

  The maximum minor version of SSL to support. Defaults to PROTOCOL_minor.

  The backend used by stream is taken over and restored after the connection is closed (see close and shutdown). The callbacks and id in stream are overwritten.

Throws

  Throws errors on handshake failure in blocking client mode.