Thank you. So it broke using the variables in main stating that it must be called main::$LOGFH.
As for using require do you think this would work?
Orignal:
use diagConfig; #$sourcepath, %files, trimwhitespace, cleanupWincuri,
+$WINCURI, $PLINK, $CLI
open my $LOGFH ,">", $files{log}{file};
#disable write buffer
my $stdout = select($LOGFH);
$| = 1;
select($stdout);
use VolumeManager (\$LOGFH, \$writelog);
use Initiator (\$LOGFH, \$writelog);
my $vm = VolumeManager->new();
my $init = Initiator->new();
Require:
use diagConfig; #$sourcepath, %files, trimwhitespace, cleanupWincuri,
+$WINCURI, $PLINK, $CLI
open my $LOGFH ,">", $files{log}{file};
#disable write buffer
my $stdout = select($LOGFH);
$| = 1;
select($stdout);
require VolumeManager;
VolumeManager->import(\$LOGFH, \$writelog);
my $vm = VolumeManager->new();
require Initiator;
Initiator->import(\$LOGFH, \$writelog);
my $init = Initiator->new();
|