#!/usr/bin/perl

use IO::Socket;

if (! defined $ARGV[2]) {
        print STDERR "Uso: cliente <servidor> <puerto> <comando>\n";
        exit 1;
}

($servidor, $puerto, $comando) = @ARGV;

$conexion = new IO::Socket::INET (PeerAddr => $servidor,
                                  PeerPort => $puerto,
                                  Proto => 'tcp')
          or die "Error al conectar con $servidor";                              

$mensaje = <$conexion>;
print $conexion "$comando\n";
$estado = <$conexion>;
if ($estado eq "OK\n") {   
        $salida = <$conexion>;
        while ($salida ne "FIN\n") {
              print $salida;
              $salida = <$conexion>;
        }
} elsif ($estado eq "ERR\n") {
        print "Comando no válido\n";
} else {
        print "Error en el servidor\n";
}  
print $conexion "salir\n";
$mensaje = <$conexion>;
$conexion->shutdown(2);
            