summaryrefslogtreecommitdiffstats
path: root/perl-install/network/netconnect.pm
diff options
context:
space:
mode:
authorThierry Vignaud <tvignaud@mandriva.org>2004-01-27 11:20:18 +0000
committerThierry Vignaud <tvignaud@mandriva.org>2004-01-27 11:20:18 +0000
commitd24187af4c974649d5776c8db897dd9bcdb6d4eb (patch)
tree568bcdd083988b1d0cfc7b82dbfeb12ac9eef04a /perl-install/network/netconnect.pm
parent83a80d0acedaa1d8568b196e87af4f3710229be6 (diff)
downloaddrakx-d24187af4c974649d5776c8db897dd9bcdb6d4eb.tar
drakx-d24187af4c974649d5776c8db897dd9bcdb6d4eb.tar.gz
drakx-d24187af4c974649d5776c8db897dd9bcdb6d4eb.tar.bz2
drakx-d24187af4c974649d5776c8db897dd9bcdb6d4eb.tar.xz
drakx-d24187af4c974649d5776c8db897dd9bcdb6d4eb.zip
configure adsl account
Diffstat (limited to 'perl-install/network/netconnect.pm')
-rw-r--r--perl-install/network/netconnect.pm55
1 files changed, 47 insertions, 8 deletions
diff --git a/perl-install/network/netconnect.pm b/perl-install/network/netconnect.pm
index 113ab7390..1eb295015 100644
--- a/perl-install/network/netconnect.pm
+++ b/perl-install/network/netconnect.pm
@@ -632,20 +632,59 @@ If you don't know, choose 'use pppoe'"),
},
],
post => sub {
+ $netcnx->{type} = 'adsl';
$adsl_type = find { $adsl_types{$_} eq $adsl_protocol } keys %adsl_types;
- if ($adsl_type eq 'dhcp') {
- $auto_ip = 1;
- return 'lan_intf';
- } elsif ($adsl_type eq 'manual') {
- $auto_ip = 0;
+ $adsl_type = { reverse %adsl_types }->{$adsl_protocol};
+ # process static/dhcp ethernet devices:
+ if (!exists $adsl_devices{$adsl_device} && member($adsl_type, qw(manual dhcp))) {
+ $auto_ip = $adsl_type eq 'dchp';
+ $ethntf->{DEVICE} = $ntf_name;
+ $find_lan_module->();
+ delete $ethntf->{$_} foreach keys %$ethntf;
+ add2hash($ethntf, $intf->{$ntf_name});
return 'lan_intf';
- } elsif ($adsl_type eq 'pppoe') {
- $netc->{NET_DEVICE} = $ntf_name;
}
- return 'hw_account';
+ network::adsl::adsl_probe_info($netcnx, $netc, $adsl_type, $adsl_device);
+ $netc->{NET_DEVICE} = $ntf_name if $adsl_type eq 'pppoe';
+ return 'adsl_account';
},
},
+
+ adsl_account =>
+ {
+ pre => sub {
+ $netc->{dnsServer2} ||= $adsl_data->{dns1};
+ $netc->{dnsServer3} ||= $adsl_data->{dns2};
+ },
+ name => N("Connection Configuration") . "\n\n" .
+ N("Please fill or check the field below"),
+ data => sub {
+ [
+ { label => N("Provider name (ex provider.net)"), val => \$netc->{DOMAINNAME2} },
+ { label => N("First DNS Server (optional)"), val => \$netc->{dnsServer2} },
+ { label => N("Second DNS Server (optional)"), val => \$netc->{dnsServer3} },
+ { label => N("Account Login (user name)"), val => \$netcnx->{login} },
+ { label => N("Account Password"), val => \$netcnx->{passwd}, hidden => 1 },
+ ],
+ },
+ post => sub {
+ if ($netc->{country}) {
+ my %h = (N("Belgium") => [ 8, 35 ],
+ N("France") => [ 8, 35 ],
+ N("Italy") => [ 8, 35 ],
+ N("Netherlands") => [ 8, 48 ],
+ N("United Kingdom") => [ 0, 38 ],
+ N("United States") => [ 8, 35 ],
+ );
+ ($netc->{vpi}, $netc->{vci}) = @{$h{$netcnx->{country}}};
+ }
+ network::adsl::adsl_conf_backend($netcnx, $netc, $adsl_device, $adsl_type); #FIXMEl
+ $handle_multiple_cnx->();
+ },
+ },
+
+
adsl_unsupported_eci =>
{
name => N("The ECI Hi-Focus modem cannot be supported due to binary driver distribution problem.