You normally wouldn't use IO::Socket directly.
If you want a TCP socket, you'd use IO::Socket::INET which is a sub-class of IO::Socket.
The constructor of IO::Socket::INET takes as parameters a "flattened hash" of arguments. Like so:
my $sock = IO::Socket::INET->new(
OptionFoo => 1,
OptionBar => 'something',
OptionBaz => 10
);
If you read the IO::Socket::INET documentation, you'll see that one of the options mentioned is called 'Timeout', and is likely the option you'll need to change.
I'd imagine something like: use strict;
use warnings;
use IO::Socket::INET;
my $sock = IO::Socket::INET->new(
PeerAddr => '123.45.67.89', # IP address
PeerPort => '2000', # port
Timeout => '60' # timeout in seconds
);
# rest of your code using $sock.
Is that easier to understand ?
-David
|