#!/afs/athena/contrib/perl/perl

require 'sys/socket.ph';

$sockaddr = 'S n a4 x8';

$proto = (getprotobyname('tcp'))[2];
$port = $ARGV[0] || 7999;
$hostaddr = (gethostbyname('localhost'))[4] || die "Can't find localhost!";

$port = pack($sockaddr, &AF_INET, $port, $hostaddr);
socket(S, &AF_INET, &SOCK_STREAM, $proto) || die "Can't open socket";
connect(S, $port) || die "Can't connect socket";

print "Enter a string: ";
$string = <STDIN>;
$string =~ tr/\n\r//d;  # get rid of CRLF

select (S);
$| = 1;
print S length($string), "\n";
print S "$string\n";

$answer = <S>;
print STDOUT "Server replied: $answer";
