diff --git a/xCAT-server/lib/perl/xCAT/xcatd.pm b/xCAT-server/lib/perl/xCAT/xcatd.pm index f1318b14e..6bd6f3292 100644 --- a/xCAT-server/lib/perl/xCAT/xcatd.pm +++ b/xCAT-server/lib/perl/xCAT/xcatd.pm @@ -89,8 +89,17 @@ sub validate { next unless ($peerhost eq $rule->{host}); } if ($rule->{commands} and $rule->{commands} ne '*') { - #TODO: syntax for multiple commands - next unless ($request->{command}->[0] eq $rule->{commands}); + my @commands = split(",", $rule->{commands}); + my $found =0; + foreach my $cmd (@commands) { + if ($request->{command}->[0] eq $cmd) { + $found=1; + last; + } + } + if ($found == 0) { # no command match + next ; + } } if ($rule->{parameters} and $rule->{parameters} ne '*') { my $parms;