in reply to learn sth.

SOCKET->opened() is a method inherited from IO::Handle. So if you 'use IO::Handle' you may use its methods on your handles.

You might find it much easier to use the IO::Socket module to do socket programming.

Autark.