#!/usr/bin/env perl # perl modules use IO::Socket; use POSIX qw(:sys_wait_h); use Sys::Hostname; my $hostname = hostname; my $port = "7071"; $SIG{CHLD} = 'IGNORE'; # make socket connection my $socket = new IO::Socket::INET ( LocalHost => "$hostname", LocalPort => "$port", Proto => 'tcp', Reuse => 1, Listen => SOMAXCONN, ); die "Could not create socket: $!\n" unless $socket; while ($client = $socket->accept()) { $client->autoflush(1); while (<$client>) { chomp; my ($command,@var2) = split(":", $_); my $cmd; $pid = fork; if ($pid == 0){ } else { `kill $pid 2>/dev/null`; } unless ( $pid ){ if ($command eq 'ls'){ $cmd = sprintf("ls -s @var"); } $run_cmd = system($cmd); } } close($client); } close($socket);