#!/usr/bin/perl -w use strict; use IO::Socket; my ($host, $port, $kidpid, $handle, $line, $conectado); unless (@ARGV == 2) { die "usage: $0 host port" } ($host, $port) = @ARGV; # create a tcp connection to the specified host and port $handle = IO::Socket::INET->new(Proto => "tcp", PeerAddr => $host, PeerPort => $port, Reuse => 1) or die "can't connect to port $port on $host: $!"; $handle->autoflush(1); # so output gets there right away print STDERR "[Connected to $host:$port]\n"; # split the program into two processes, identical twins die "can't fork: $!" unless defined($kidpid = fork()); if ($kidpid) { # copy standard input to the socket while (defined ($line = )) { # aqui envia para o cliente print $handle $line; } } else { while (defined ($line = <$handle>)) { print STDOUT "Servidor diz: $line\n"; # print STDOUT $line; } kill("TERM", $kidpid); # send SIGTERM to child }