summaryrefslogtreecommitdiffstats
path: root/perl-install/network/tools.pm
diff options
context:
space:
mode:
authorOlivier Blin <oblin@mandriva.org>2004-08-30 11:16:31 +0000
committerOlivier Blin <oblin@mandriva.org>2004-08-30 11:16:31 +0000
commitdc6d19b1cc33b5bf7ad00589183fab12ce192cdd (patch)
tree5d417f5d8abfaaa881ad158aae07e18bdd3c5187 /perl-install/network/tools.pm
parent04eb4aa7851380c102e64d7a2f6eda0d6f14c3fc (diff)
downloaddrakx-dc6d19b1cc33b5bf7ad00589183fab12ce192cdd.tar
drakx-dc6d19b1cc33b5bf7ad00589183fab12ce192cdd.tar.gz
drakx-dc6d19b1cc33b5bf7ad00589183fab12ce192cdd.tar.bz2
drakx-dc6d19b1cc33b5bf7ad00589183fab12ce192cdd.tar.xz
drakx-dc6d19b1cc33b5bf7ad00589183fab12ce192cdd.zip
move start_interface and stop_interface from net_monitor to network::tools, use it in net_monitor and net_applet
Diffstat (limited to 'perl-install/network/tools.pm')
-rw-r--r--perl-install/network/tools.pm17
1 files changed, 16 insertions, 1 deletions
diff --git a/perl-install/network/tools.pm b/perl-install/network/tools.pm
index 536870973..cfd92734b 100644
--- a/perl-install/network/tools.pm
+++ b/perl-install/network/tools.pm
@@ -9,7 +9,7 @@ use vars qw(@ISA @EXPORT @EXPORT_OK);
use MDK::Common::System qw(getVarsFromSh);
@ISA = qw(Exporter);
-@EXPORT = qw(connect_backend connected connected_bg disconnect_backend is_dynamic_ip passwd_by_login read_secret_backend set_cnx_script test_connected write_cnx_script remove_initscript write_secret_backend);
+@EXPORT = qw(connect_backend connected connected_bg disconnect_backend is_dynamic_ip passwd_by_login read_secret_backend set_cnx_script test_connected write_cnx_script remove_initscript write_secret_backend start_interface stop_interface);
our $connect_prog = "/etc/sysconfig/network-scripts/net_cnx_pg";
our $connect_file = "/etc/sysconfig/network-scripts/net_cnx_up";
@@ -82,6 +82,21 @@ sub disconnect_backend {
run_program::rooted($::prefix, "ifdown $netc->{NET_INTERFACE} &");
}
+sub bg_command_as_root {
+ my ($name, @args) = @_;
+ run_program::raw({ detach => 1 }, [ 'consolehelper', $name ], @args);
+}
+
+sub start_interface {
+ my ($intf) = @_;
+ bg_command_as_root('/sbin/ifup', $intf);
+}
+
+sub stop_interface {
+ my ($intf) = @_;
+ bg_command_as_root('/sbin/ifdown', $intf);
+}
+
sub connected() { gethostbyname("mandrakesoft.com") ? 1 : 0 }
# request a ref on a bg_connect and a ref on a scalar