I am working on the assumption that the question is about hosting a socket
server that writes out responses with GET requests to whoever logs in (why???). Perhaps I am misunderstanding the original question because the responses suggesting LWP::UserAgent don't seem to address it? Anyway, something like this might work:
#!/usr/bin/perl
# startup with "scriptname localport redirect"
use warnings;
use strict;
use IO::Socket;
# port to listen on, stuff to write to clients
my ( $localport, $redirect ) = ( $ARGV[0], $ARGV[1] );
# setting up server
my $server = IO::Socket::INET->new(
LocalPort => $localport,
Proto => 'tcp',
Listen => SOMAXCONN,
Reuse => 1
) || die "couldn't be a tcp server on port $localport:$@\n";
# status
print qq{DAEMON LISTENING ON: $localport\n};
# new connections are instantiated like so
while ( my ($client, $c_addr) = $server->accept()) {
# collecting details about new connection
my ($client_port, $c_ip) = sockaddr_in($c_addr);
my $client_ipnum = inet_ntoa($c_ip);
my $client_host = gethostbyaddr($c_ip, AF_INET);
# printing client info
print qq{INCOMING: $client_host, $client_ipnum\n};
# retrieving whatever the incoming connection is saying
while(<$client>) {
print;
print $client $redirect;
}
}
Not (really) tested.