I tried it along these lines:
#!/usr/bin/perl
use strict;
use IO::Socket;
use Net::hostent;
my $port = 22500;
my $server = IO::Socket::INET->new(
LocalAddr => 'localhost',
LocalPort => $port,
Proto => 'tcp',
Type => SOCK_STREAM,
Listen => SOMAXCONN,
Reuse => 1
) or die "Can't setup server: $!\n";
print "[Server $0 accepting clients]\n";
my $request;
while ( my $client = $server->accept() ) {
my $client->autoflush(1);
my $hostinfo = gethostbyaddr( $client->peeraddr );
print $client "$request: \n";
while ( $request = <$client> ) {
next unless /\S/;
if (<$client>) {
print $client "$request\n";
}
else {
close($client);
}
}
|