sub perform_dump { print "\nDumping the discs...\n"; foreach my $disc (@discs) { print "...$disc...\n"; local (*HIS_IN, *HIS_OUT, *HIS_ERR); my $cmd = '/usr/sbin/ufsdump'; my @args = ('0luf', '/dev/rmt/1n', $disc); my $pid = open3 (*HIS_IN, *HIS_OUT, *HIS_ERR, $cmd, @args); print while (); wait; &barf ('dump-fail', $disc) if $? != 0; } }