IO::Async::SSLStream - read and write buffers around an SSL connection


This subclass of IO::Async::Stream provides support for using an SSL connection, as created by IO::Async::SSL's SSL_connect or SSL_listen extension methods. After one of these methods has provided a socket handle, it should be wrapped in an IO::Async::SSLStream object to provide the usual on_read callback.

It provides no extra methods and consumes no extra configuration parameters; treat it the same as a regular IO::Async::Stream object.

See the main IO::Async::SSL documentation for an example of its use.


  • Currently, this subclass does not completely handle the autoflush configure option. It is possible for the SSL_write(3ssl) call to fail with EAGAIN and SSL_WANT_READ, indicating that it wishes to read (perhaps to obtain fresh keys from the server). In this case, the subclass will not correctly poll for readability and retry the write operation. This bug does not occur with regular write with autoflush turned off.


Paul Evans <>