From 10aead103b201c9b3592613213a7ef07cee092cd Mon Sep 17 00:00:00 2001 From: Jamie Cameron Date: Mon, 18 Jan 2010 21:17:43 -0800 Subject: [PATCH] Extra protection against bad modules --- backup-config/backup-config-lib.pl | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/backup-config/backup-config-lib.pl b/backup-config/backup-config-lib.pl index 2d1c82480..b2de0efdd 100755 --- a/backup-config/backup-config-lib.pl +++ b/backup-config/backup-config-lib.pl @@ -277,7 +277,8 @@ sub execute_backup # Work out modules we can use local @mods; foreach my $m (@{$_[0]}) { - if ($m && &foreign_check($m)) { + my $mdir = &module_root_directory($m); + if ($m && &foreign_check($m) && -r "$mdir/backup_config.pl") { push(@mods, $m); } } @@ -521,7 +522,9 @@ foreach my $m (@{$_[0]}) { # Call module pre functions foreach my $m (@{$_[0]}) { - if ($m && &foreign_check($m) && !$_[4]) { + my $mdir = &module_root_directory($m); + if ($m && &foreign_check($m) && !$_[4] && + -r "$mdir/backup_config.pl") { &foreign_require($m, "backup_config.pl"); if (&foreign_defined($m, "pre_restore")) { local $err = &foreign_call($m, "pre_restore", \@files);