From cc65b8d0cc6c0ced59285cf34f6c3c8f8ef17fdd Mon Sep 17 00:00:00 2001 From: Eugeni Dodonov Date: Fri, 14 Aug 2009 15:31:39 +0000 Subject: Implemented netprofile module management. --- lib/network/network.pm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to 'lib/network') diff --git a/lib/network/network.pm b/lib/network/network.pm index 8170d4a..ebcf9ca 100644 --- a/lib/network/network.pm +++ b/lib/network/network.pm @@ -395,6 +395,34 @@ sub gateway { join(".", @masked); } +sub netprofile_modules() { + my @m = split('\n', `/sbin/netprofile modules`); + my @modules = (); + + foreach my $module (@m) { + my @params = split('\t', $module); + my $vals = { + module => @params[0], + enabled => @params[1] == '+' ? 1 : 0, + name => @params[2], + description => @params[3], + }; + push(@modules, $vals); + } + @modules; +} + +sub netprofile_module_enable { + my ($module) = @_; + system('/sbin/netprofile', 'module_enable', $module); + log::explanations(qq(Enabling netprofile module $module)); +} + +sub netprofile_module_disable { + my ($module) = @_; + system('/sbin/netprofile', 'module_disable', $module); + log::explanations(qq(Disabling netprofile module $module)); +} sub netprofile_set { my ($net, $profile) = @_; -- cgit v1.2.1