6 my $port = shift || 13131;
\r
8 my $server = IO::Socket::INET->new(
\r
10 LocalPort => $port,
\r
11 Listen => SOMAXCONN,
\r
13 || die "can't setup server";
\r
14 print "[Q3Map2 listener $0 is now active on port $port]\n";
\r
16 while( $client = $server->accept() )
\r
19 $client->autoflush( 1 );
\r
21 $hostinfo = gethostbyaddr( $client->peeraddr );
\r
22 printf "[Connect from %s]\n\n", $hostinfo ? $hostinfo->name : $client->peerhost;
\r
24 #ask the client for a command
\r
25 print $client "[server]\$";
\r
30 while( $text =~ s|<message[^>]*>([^<]+)</message>|| )
\r
37 $msg =~ s|"|"|g;#"
\r
38 $msg =~ s|'|'|g;#'
\r
44 printf "\n[Disconnected: %s]\n\n", $hostinfo ? $hostinfo->name : $client->peerhost;
\r