]> rtime.felk.cvut.cz Git - frescor/fwp.git/blob - wme_test/more_sta/wclientpar
Merge branch 'master' of rtime.felk.cvut.cz:frescor/fwp
[frescor/fwp.git] / wme_test / more_sta / wclientpar
1 #!/usr/bin/perl -w
2
3 # Runs wclient with given parameters on the host (and interface) given
4 # by RUNAT environment variable.
5
6 sub get_output {
7     my @a=@ARGV;
8     my $output = "delay_stats";
9     while ($#a >= 0) {
10         if ($a[0] eq "-o") {
11             $output = $a[1];
12         };
13         shift @a;
14     }
15     return $output;
16 }
17
18 @run_at = qw!localhost localhost localhost/wlan1!;
19 @run_at = split(/ +/, $ENV{'RUNAT'}) if $ENV{'RUNAT'};
20
21 $i = 0;
22 my %outputs;
23 foreach $run (@run_at) {
24     ($host, $iface) = split(/\//, $run, 2);
25     @args = ();
26     push @args, ('ssh', $host) if ($host ne 'localhost');
27     push @args, ('wclient');
28     push @args, ('-I', $iface) if (defined $iface);
29     push @args, @ARGV;
30     $output = get_output();
31     $output .= sprintf("-%s%s", $host, defined $iface ? "-$iface":"");
32     if ($outputs{$output}) { $output .= sprintf("-%02d", $i); }
33     $outputs{$output} = 1;
34     push(@args, ('-o', $output));
35     if (fork() == 0) {
36         print "running ", join(' ', @args), "\n";
37         exec(@args);
38         exit();
39     }
40     $i++;
41 }
42 foreach $run (@run_at) {
43     wait();
44 }