diff options
-rw-r--r-- | initramfs/OpenSLX/MakeInitRamFS/Engine.pm | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/initramfs/OpenSLX/MakeInitRamFS/Engine.pm b/initramfs/OpenSLX/MakeInitRamFS/Engine.pm index 482af6b2..43374e9e 100644 --- a/initramfs/OpenSLX/MakeInitRamFS/Engine.pm +++ b/initramfs/OpenSLX/MakeInitRamFS/Engine.pm @@ -750,7 +750,17 @@ sub _calloutToPlugins foreach my $pluginName (@{$self->{'plugins'}}) { my $plugin = OpenSLX::OSPlugin::Roster->getPlugin($pluginName); next if !$plugin; - $plugin->setupPluginInInitramfs($self->{attrs}, $self); + + # create a hash only containing the attributes relating to the + # current plugin + my $allAttrs = $self->{attrs}; + my %pluginAttrs; + for my $attrName (grep { $_ =~ m{^${pluginName}::} } keys %$allAttrs) { + $pluginAttrs{$attrName} = $allAttrs->{$attrName}; + } + + # let plugin setup itself in the initramfs + $plugin->setupPluginInInitramfs(\%pluginAttrs, $self); } return; } |