summaryrefslogtreecommitdiffstats
path: root/perl-install/network/isdn.pm
diff options
context:
space:
mode:
Diffstat (limited to 'perl-install/network/isdn.pm')
-rw-r--r--perl-install/network/isdn.pm32
1 files changed, 14 insertions, 18 deletions
diff --git a/perl-install/network/isdn.pm b/perl-install/network/isdn.pm
index a97710963..d1e326e20 100644
--- a/perl-install/network/isdn.pm
+++ b/perl-install/network/isdn.pm
@@ -7,7 +7,7 @@ use modules;
use log;
use network::tools;
use vars qw(@ISA @EXPORT);
-use MDK::Common::Globals "network", qw($in $prefix $install; $connect_file $disconnect_file);
+use MDK::Common::Globals "network", qw($in $prefix $install);
@ISA = qw(Exporter);
@EXPORT = qw(isdn_write_config isdn_write_config_backend get_info_providers_backend isdn_ask_info isdn_ask_protocol isdn_ask isdn_detect isdn_detect_backend isdn_get_list isdn_get_info);
@@ -38,7 +38,7 @@ sub configure {
}
sub isdn_write_config {
- my ($isdn) = @_;
+ my ($isdn, $netc) = @_;
isdn_write_config_step_1:
my $e = $in->ask_from_list_(_("Network Configuration Wizard"),
_("Which ISDN configuration do you prefer?
@@ -52,15 +52,15 @@ We recommand the light configuration.
"), [ __("New configuration (isdn-light)"), __("Old configuration (isdn4net)")]
) or return;
#FIXME debug only
- system('urpmi --auto --best-output ' . join(' ', $e =~ /light/ ? 'isdn-light' : 'isdn4net', 'isdn4k-utils'));
- #$install->($e =~ /light/ ? 'isdn-light' : 'isdn4net', 'isdn4k-utils');
- isdn_write_config_backend($isdn, $e =~ /light/);
+ #system('urpmi --auto --best-output ' . join(' ', $e =~ /light/ ? 'isdn-light' : 'isdn4net', 'isdn4k-utils'));
+ $install->($e =~ /light/ ? 'isdn-light' : 'isdn4net', 'isdn4k-utils');
+ isdn_write_config_backend($isdn, $e =~ /light/, $netc);
$::isStandalone and ask_connect_now($isdn, 'ippp0');
1;
}
sub isdn_write_config_backend {
- my ($isdn, $light) = @_;
+ my ($isdn, $light, $netc) = @_;
if ($light) {
modules::mergein_conf("$prefix/etc/modules.conf");
if ($isdn->{id}) {
@@ -121,20 +121,16 @@ defaultroute
write_secret_backend($isdn->{login}, $isdn->{passwd});
- output "$prefix$connect_file",
- "#!/bin/bash
+ write_cnx_script($netc, "isdn",
+"#!/bin/bash
/sbin/route del default
/sbin/ifup ippp0
/sbin/isdnctrl dial ippp0
-";
-
- output "$prefix$disconnect_file",
- "#!/bin/bash
+",
+"#!/bin/bash
/sbin/isdnctrl hangup ippp0
/sbin/ifdown ippp0
-";
- chmod 0755, "$prefix$disconnect_file";
- chmod 0755, "$prefix$connect_file";
+");
1;
}
@@ -203,13 +199,13 @@ If you have a PCMCIA card, you have to know the irq and io of your card.
_("Which is your ISDN card ?"),
sub { $_[0]{description} },
[ grep {$_->{card} eq $isdn->{card_type}; } @isdndata ] ) or goto isdn_ask_step_1;
- $e->{$_} and $isdn->{$_} = $e->{$_} foreach qw(driver type mem io io0 io1 irq);
+ $e->{$_} and $isdn->{$_} = $e->{$_} foreach qw(driver type mem io io0 io1 irq firmware);
isdn_ask_step_3:
$isdn->{protocol} = isdn_ask_protocol() or goto isdn_ask_step_2;
isdn_ask_step_4:
isdn_ask_info($isdn, $netc) or goto isdn_ask_step_3;
- isdn_write_config($isdn) or goto isdn_ask_step_4;
+ isdn_write_config($isdn, $netc) or goto isdn_ask_step_4;
1;
}
@@ -225,7 +221,7 @@ sub isdn_detect {
$isdn->{protocol}=isdn_ask_protocol() or return;
isdn_detect_step_2:
isdn_ask_info($isdn, $netc) or goto isdn_detect_step_1;
- isdn_write_config($isdn) or goto isdn_detect_step_2;
+ isdn_write_config($isdn, $netc) or goto isdn_detect_step_2;
}
} else {
isdn_ask($isdn, $netc, _("No ISDN PCI card found. Please select one on the next screen.")) or return;