summaryrefslogtreecommitdiff
path: root/tests/autotest-remote-server.pl
diff options
context:
space:
mode:
Diffstat (limited to 'tests/autotest-remote-server.pl')
-rw-r--r--tests/autotest-remote-server.pl16
1 files changed, 13 insertions, 3 deletions
diff --git a/tests/autotest-remote-server.pl b/tests/autotest-remote-server.pl
index 970476c..a8410a1 100644
--- a/tests/autotest-remote-server.pl
+++ b/tests/autotest-remote-server.pl
@@ -3,15 +3,25 @@
use IO::Socket;
$vm = shift;
+$log = shift;
+# start virtualbox gui in minimized mode - this should be the first thing we do since this process
+# inherits all handles and we want our sockets/log file closed
+system("start /min virtualbox --startvm $vm");
+
+# start a server; vm will connect to the server via autotest-remote-host.pl
my $server = new IO::Socket::INET(LocalPort => 7183, Listen => 1);
die "Could not create socket: $!\n" unless $server;
-system("vboxmanage startvm $vm --type headless");
+open LOG, ">> $log" || die "Could not open log file: $!\n";
-print "Listening for connection...\n";
+print LOG "Listening for connection...\n";
my $client = $server->accept();
-print while (<$client>);
+# echo all input to log file
+print LOG $_ while (<$client>);
+close LOG;
+$client->close();
+$server->close();