All pastes #562745 Raw Edit

Anonymous

public text v1 · immutable
·published 2007-06-12 21:55 UTC
rendered paste body
my %MODES;

${MODES}{"start"}{function} = \&startChroot;
${MODES}{"start"}{data} = \$start;

${MODES}{"stop"}{function} = \&stopChroot;
${MODES}{"stop"}{data} = \$stop;

${MODES}{"reset"}{function} = \&resetChroot;
${MODES}{"reset"}{data} = \$reset;

${MODES}{"delete"}{function} = \&deleteChroot;
${MODES}{"delete"}{data} = \$delete;

for(sort(keys(%MODES))) {
  my $mode = $_;

 if (defined(${ ${MODES}{$mode}{data} }) && ${ ${MODES}{$mode}{data} } ne "") {
    my @CHROOTS = split(",", ${ ${MODES}{$mode}{data} });

    for (@CHROOTS) {
      my $name = $_;
      if ($name =~ /all/) {
        foreach my $user (keys(%CHROOT)) {
          foreach my $chrootname (keys( %{ ${CHROOT}{$user} } )) {
            &{ ${MODES}{$mode}{function} }($user, $chrootname) or die "operation failed for $user:$chrootname";
          }
        }
      } else {
        foreach my $chrootname (keys( %{ ${CHROOT}{$name} } )) {
         &{ ${MODES}{$mode}{function} }($name, $chrootname) or die "operation failed for $name:$chrootname";
} } } } }

exit;