my $socket_fd :shared; # in one thread $socket_fd = $ssl_socket->fileno; # in another thread my $ssl_socket = IO::Handler->new_from_fd($socket_fd, "r"); #### my $ssl_socket = IO::Socket::SLL->new_from_fd($socket_fd, "r");