Yeah, I did that. That's how I determined that the problem was with IO::Select::INET and not with anything else. My test code was:
#!/usr/bin/perl
use strict;
use IO::Select::INET;
my $sock = IO::Select::INET->new(
PeerAddr => '(host)', # where host is some host I knew
PeerPort => 'ftp(21)', # or http(80) or whatever
Proto => 'tcp'
);
print defined $sock ? 'Connected!' : $@, "\n";
exit 0;
And then again with Timeout => 0 and Timeout => 120. It was successful on all of them except for Timeout => 120, which it failed to connect (and not after 120 seconds).
Might I add to this that the reason IO::Socket::INET is giving for not creating the socket (as returned by $@) is 'IO::Socket::INET: Timeout'. Since I can connect when no Timeout is specified, I think I've at least narrowed it down to a problem within the module and not something en route causing a connection failure.