in reply to IO::Socket::SSL and IO::Select

> IO::Select::can_read returns my socket indicating there is data to read.

can_read does not say that actually data can be read, but that there is something to read on the socket. In your case this "something" tuns out to be nothing, e.g. sysread returns 0. This means end of data, that is the remote end has closed the connection.

Replies are listed 'Best First'.
Re^2: IO::Socket::SSL and IO::Select
by Bodger (Acolyte) on Mar 11, 2015 at 23:59 UTC
    Thank you I was trying to confirm that. It is odd that the $socket->connected does not reflect it.
      The socket is still connected, but the other end announced that it will not send any more data. It might be possible that you still can write data and the peer will accept it.
      This is simply how TCP works and has nothing to do with SSL or Perl.