{ my $inkernel = $pppoe{InKernel} || "no"; my $timeout = $pppoe{Timeout} || 120; # PPPOE_TIMEOUT should be about 4*LCP_INTERVAL my $device = $pppoe{PhysicalInterface} || "eth1"; my $syncPPP = $pppoe{SynchronousPPP} || "no"; my $syncflag = ""; $OUT = ""; if ($syncPPP eq "yes") { $OUT .= "sync\n"; $syncflag = "-s"; } if ($inkernel eq "yes") { # Find Roaring Penguin pppoe plugin my ($plugin) = glob "/usr/lib*/pppd/*/rp-pppoe.so"; $plugin ||= "pppoe_plugin_could_not_be_found"; $OUT .= "plugin $plugin\n"; $OUT .= "$device"; } else { $OUT .= "pty '/usr/sbin/pppoe -I $device -T $timeout -U -m 1412 $syncflag'"; } }