- my @livehosts;
- foreach my $host ("sarah", "homer", "lisa", "mona") {
- push @livehosts, $host if(ping($host));
+ my (@check) = ("tobias", "lucille", "lindsay", "buster");
+ my (@uphosts, @livehosts, $host, $hostlist);
+ if(($_[0] || 0) == 1) {
+ $hostlist=$state{'hosts'};
+ $hostlist=~s/0\S* ?//g;
+ @livehosts = split / /, $hostlist;
+ } else {
+ $hostlist="";
+ foreach $host (@check) {
+ push @uphosts, $host if(ping($host));
+ }
+ foreach $host (@uphosts) {
+ if(is_alive($host)) {
+ push @livehosts,$host;
+ $hostlist="$host $hostlist";
+ } else {
+ $hostlist="0$host $hostlist";
+ }
+ }
+ $hostlist=~s/ $//;
+ $state{'hosts'}=$hostlist;