my $sock = IO::Socket::INET->new(
Proto=>"tcp",
LocalHost=>"Localhost",
Listen=>16,
Reuse=>1,
LocalPort=>$ARGV[0]
) or die("Could not create socket!\n")
+;
my $readSet = new IO::Select();
$readSet->add($sock);
my $rhSet = IO::Select->select($readSet);
while(my @ready = $rhSet->can_read(0))
{
foreach $rh(@ready)
{
if($rh == $sock)
{
$newSocket=$rh->accept();
$readSet->add($newSocket);
} else
{
$buf=<$rh>;
if($buf)
{
printf "$buf";
} else
{
$readSet->remove($rh);
close($rh);
}
}
}
}
|