summaryrefslogtreecommitdiffstats
path: root/lib/network/connection/xdsl.pm
diff options
context:
space:
mode:
Diffstat (limited to 'lib/network/connection/xdsl.pm')
-rw-r--r--lib/network/connection/xdsl.pm11
1 files changed, 11 insertions, 0 deletions
diff --git a/lib/network/connection/xdsl.pm b/lib/network/connection/xdsl.pm
index f50a9a6..70b3288 100644
--- a/lib/network/connection/xdsl.pm
+++ b/lib/network/connection/xdsl.pm
@@ -35,6 +35,11 @@ sub uses_atm_arp {
$self->{device}{xdsl_type} eq 'usb' && !$self->uses_ppp;
}
+sub uses_atm_bridging {
+ my ($self) = @_;
+ $self->{device}{xdsl_type} eq 'usb' && member($self->{protocol}, qw(pppoe));
+}
+
my %protocol_settings = (
pppoa => {
plugin => sub {
@@ -316,6 +321,12 @@ sub build_ifcfg_settings {
MII_NOT_SUPPORTED => "yes",
}, $settings);
}
+ if ($self->uses_atm_bridging) {
+ put_in_hash({
+ ATM_DEVICE => "nas0",
+ ATM_ADDR => join('.', @{$self->{access}{peer}}{qw(vpi vci)}),
+ }, $settings);
+ }
$self->network::connection::build_ifcfg_settings($settings);
}