X-Git-Url: http://git.ipfire.org/?p=people%2Fpmueller%2Fipfire-2.x.git;a=blobdiff_plain;f=html%2Fcgi-bin%2Fpppsetup.cgi;h=a39d4f722c99249da6d98ea41521f4e3b6530480;hp=f09e3724a6cba959dd77d7090f0367d62eb6eeea;hb=be24d6b32f46f97242da308c5c625c0f34d8ff3b;hpb=789047d0be334c14b313acf3f634686eedbf98f7 diff --git a/html/cgi-bin/pppsetup.cgi b/html/cgi-bin/pppsetup.cgi index f09e3724a6..a39d4f722c 100644 --- a/html/cgi-bin/pppsetup.cgi +++ b/html/cgi-bin/pppsetup.cgi @@ -53,17 +53,15 @@ $pppsettings{'ACTION'} = ''; &Header::getcgihash(\%pppsettings); if ($pppsettings{'ACTION'} ne '' && - (-e '/var/run/ppp-ipcop.pid' || -e "${General::swroot}/red/active")) -{ + ( -e "${General::swroot}/red/active")){ $errormessage = $Lang::tr{'unable to alter profiles while red is active'}; # read in the current vars %pppsettings = (); $pppsettings{'VALID'} = ''; - &General::readhash("${General::swroot}/ppp/settings", \%pppsettings); -} + &General::readhash("${General::swroot}/ppp/settings", \%pppsettings);} elsif ($pppsettings{'ACTION'} eq $Lang::tr{'refresh'}) { - unless ($pppsettings{'TYPE'} =~ /^(modem|serial|isdn|pppoe|pptp|pppoeatm)$/) { + unless ($pppsettings{'TYPE'} =~ /^(modem|serial|isdn|pppoe|pptp|vdsl|pppoeatm|pptpatm)$/) { $errormessage = $Lang::tr{'invalid input'}; goto ERROR; } my $type = $pppsettings{'TYPE'}; @@ -92,7 +90,7 @@ elsif ($pppsettings{'ACTION'} eq $Lang::tr{'save'}) goto ERROR; } if ($pppsettings{'TYPE'} =~ /^(modem|isdn)$/) { if ($pppsettings{'TELEPHONE'} eq '') { - $errormessage = $Lang::tr{'telephone not set'}; + $errormessage = $Lang::tr{'telephone not set'}; goto ERROR; } if (!($pppsettings{'TELEPHONE'} =~ /^[\d\*\#\,]+$/)) { $errormessage = $Lang::tr{'bad characters in the telephone number field'}; @@ -100,7 +98,7 @@ elsif ($pppsettings{'ACTION'} eq $Lang::tr{'save'}) } unless (($pppsettings{'PROTOCOL'} eq 'RFC1483' && $pppsettings{'METHOD'} =~ /^(STATIC|DHCP)$/)) { if ($pppsettings{'USERNAME'} eq '') { - $errormessage = $Lang::tr{'username not set'}; + $errormessage = $Lang::tr{'username not set'}; goto ERROR; } if ($pppsettings{'PASSWORD'} eq '') { $errormessage = $Lang::tr{'password not set'}; @@ -115,7 +113,7 @@ elsif ($pppsettings{'ACTION'} eq $Lang::tr{'save'}) goto ERROR; } if ($pppsettings{'LOGINSCRIPT'} =~ /[.\/ ]/ ) { - $errormessage = $Lang::tr{'bad characters in script field'}; + $errormessage = $Lang::tr{'bad characters in script field'}; goto ERROR; } if ($pppsettings{'DNS1'}) @@ -142,20 +140,7 @@ elsif ($pppsettings{'ACTION'} eq $Lang::tr{'save'}) $errormessage = $Lang::tr{'only digits allowed in holdoff field'}; goto ERROR; } - if ($pppsettings{'TYPE'} eq 'pptp') { - $errormessage = ''; - if ($pppsettings{'METHOD'} eq 'STATIC') { - if (! &General::validip($pppsettings{'ROUTERIP'})) { - $errormessage = $Lang::tr{'router ip'}.' '.$Lang::tr{'invalid ip'}; - } - } else { - if (($pppsettings{'DHCP_HOSTNAME'} ne '') && (! &General::validfqdn($pppsettings{'DHCP_HOSTNAME'})) ) { - $errormessage = $errormessage.' '.$Lang::tr{'hostname'}.' '.$Lang::tr{'invalid hostname'}; - } - } - if ($errormessage ne '') {goto ERROR; } - } - if ($pppsettings{'TYPE'} =~ /^(pppoeatm)$/) { + if ($pppsettings{'TYPE'} =~ /^(pppoeatm|pptpatm)$/) { if ( ($pppsettings{'VPI'} eq '') || ($pppsettings{'VCI'} eq '') ) { $errormessage = $Lang::tr{'invalid vpi vpci'}; goto ERROR; } @@ -168,8 +153,8 @@ elsif ($pppsettings{'ACTION'} eq $Lang::tr{'save'}) if ( $pppsettings{'PROTOCOL'} eq '' ) { $errormessage = $Lang::tr{'invalid input'}; goto ERROR; } - } - + } + if ( ($pppsettings{'PROTOCOL'} eq 'RFC1483') && ($pppsettings{'METHOD'} eq '') && \ ($pppsettings{'TYPE'} !~ /^(alcatelusb|fritzdsl)$/)) { $errormessage = $Lang::tr{'invalid input'}; @@ -240,7 +225,7 @@ if ($pppsettings{'ACTION'} eq $Lang::tr{'select'}) \%temppppsettings); # make link. - &updatesettings(); + &updatesettings(); # read in the new params "early" so we can write secrets. %pppsettings = (); @@ -251,7 +236,7 @@ if ($pppsettings{'ACTION'} eq $Lang::tr{'select'}) &writesecrets(); - &General::log("$Lang::tr{'profile made current'} $pppsettings{'PROFILENAME'}"); + &General::log("$Lang::tr{'profile made current'} $pppsettings{'PROFILENAME'}"); } elsif ($pppsettings{'ACTION'} eq $Lang::tr{'delete'}) { @@ -259,14 +244,14 @@ elsif ($pppsettings{'ACTION'} eq $Lang::tr{'delete'}) my $profile = $pppsettings{'PROFILE'}; truncate ("${General::swroot}/ppp/settings-$pppsettings{'PROFILE'}", 0); - + %temppppsettings = (); $temppppsettings{'PROFILE'} = ''; &General::readhash("${General::swroot}/ppp/settings-$pppsettings{'PROFILE'}", \%temppppsettings); # make link. - &updatesettings(); + &updatesettings(); # read in the new params "early" so we can write secrets. %pppsettings = (); @@ -315,6 +300,9 @@ $selected{'TYPE'}{'modem'} = ''; $selected{'TYPE'}{'serial'} = ''; $selected{'TYPE'}{'pppoe'} = ''; $selected{'TYPE'}{'pptp'} = ''; +$selected{'TYPE'}{'vdsl'} = ''; +$selected{'TYPE'}{'pppoeatm'} = ''; +$selected{'TYPE'}{'pptpatm'} = ''; $selected{'TYPE'}{$pppsettings{'TYPE'}} = "selected='selected'"; $checked{'DEBUG'}{'off'} = ''; $checked{'DEBUG'}{'on'} = ''; @@ -364,7 +352,7 @@ $checked{'DIALONDEMANDDNS'}{'on'} = ''; $checked{'DIALONDEMANDDNS'}{$pppsettings{'DIALONDEMANDDNS'}} = "checked='checked'"; $checked{'AUTOCONNECT'}{'off'} = ''; -$checked{'AUTOCONNECT'}{'on'} = ''; +$checked{'AUTOCONNECT'}{'on'} = ''; $checked{'AUTOCONNECT'}{$pppsettings{'AUTOCONNECT'}} = "checked='checked'"; $checked{'SENDCR'}{'off'} = ''; @@ -406,7 +394,6 @@ $selected{'ENCAP'}{$pppsettings{'ENCAP'}} = "selected='selected'"; $checked{'METHOD'}{'STATIC'} = ''; $checked{'METHOD'}{'PPPOE'} = ''; -$checked{'METHOD'}{'PPPOE_PLUGIN'} = ''; $checked{'METHOD'}{'DHCP'} = ''; $checked{'METHOD'}{$pppsettings{'METHOD'}} = "checked='checked'"; @@ -422,6 +409,10 @@ $checked{'DNS'}{'Automatic'} = ''; $checked{'DNS'}{'Manual'} = ''; $checked{'DNS'}{$pppsettings{'DNS'}} = "checked='checked'"; +$checked{'IPTV'}{'enable'} = ''; +$checked{'IPTV'}{'disable'} = ''; +$checked{'IPTV'}{$pppsettings{'IPTV'}} = "checked='checked'"; + &Header::openpage($Lang::tr{'ppp setup'}, 1, ''); &Header::openbigbox('100%', 'left', '', $errormessage); @@ -436,7 +427,7 @@ if ($netsettings{'RED_TYPE'} ne 'PPPOE') { &Header::closepage(); exit(1); } - + if ($errormessage) { &Header::openbox('100%', 'center', $Lang::tr{'error messages'}); print "$errormessage\n"; @@ -485,11 +476,13 @@ print < END ; -if ($netsettings{'RED_TYPE'} eq 'PPPOE') { +if ($netsettings{'RED_TYPE'} eq 'PPPOE' ) { print <$Lang::tr{'modem'} - - + + + + + END ; @@ -498,14 +491,11 @@ chomp ($atmdev); if ($atmdev ne '') { print <PPPoE over ATM-BRIDGE + END ; } } -#if ($netsettings{'RED_TYPE'} eq 'PPTP') {# -# print "\t\n"; -#} -# #if (0) { # print <ECI USB ADSL @@ -597,14 +587,14 @@ END END ; - } + } if ($pppsettings{'TYPE'} =~ /^(modem)$/ ) { print "$Lang::tr{'number'}\n"; print "\n"; if ($pppsettings{'TYPE'} eq 'modem' ) { print "$Lang::tr{'modem speaker on'}\n"; print "\n"; - } + } } } if ($pppsettings{'TYPE'} eq 'modem') { @@ -633,7 +623,7 @@ END END -; +; } print <

$Lang::tr{'pptp settings'} - $Lang::tr{'phonebook entry'} - - - - - $Lang::tr{'static ip'} - $Lang::tr{'router ip'} - + Peer + - $Lang::tr{'dhcp mode'} - $Lang::tr{'hostname'}: * - + My Netconfig + END ; } -if ($pppsettings{'TYPE'} =~ /^(pppoeatm)$/) + +if ($pppsettings{'TYPE'} =~ /^(pppoeatm|pptpatm)$/) { print < END ; -} +} + if ($pppsettings{'TYPE'} eq 'vdsl') { +print < + IPTV: + +END +; + if ( -e '/opt/pakfire/db/installed/meta-igmpproxy'){ +print < + $Lang::tr{'on'} + + + + $Lang::tr{'off'} + +END +; + } + else { + print "No IPTV possible install addon igmpproxy"; + } +} -if ($pppsettings{'TYPE'} eq 'pppoe' || $pppsettings{'TYPE'} eq 'pppoeatm') +if ($pppsettings{'TYPE'} eq 'pppoe' || $pppsettings{'TYPE'} eq 'pppoeatm' || $pppsettings{'TYPE'} eq 'vdsl') { print <

@@ -751,13 +764,13 @@ print <$Lang::tr{'pppoe settings'} - PPPoE plugin - $Lang::tr{'service name'} * + $Lang::tr{'service name'} * + - $Lang::tr{'pppoe'} - $Lang::tr{'concentrator name'} * + $Lang::tr{'concentrator name'} * + @@ -880,16 +893,11 @@ sub initprofile $pppsettings{'ENCAP'} = '0'; $pppsettings{'VPI'} = '1'; $pppsettings{'VCI'} = '32'; - $pppsettings{'PHONEBOOK'} = 'RELAY_PPP1'; + $pppsettings{'PPTP_PEER'} = '10.0.0.138'; + $pppsettings{'PPTP_NICCFG'} = '10.0.0.140/24 broadcast 10.0.0.255'; $pppsettings{'PROTOCOL'} = 'RFC2364'; - $pppsettings{'METHOD'} = 'PPPOE_PLUGIN'; - if ( $pppsettings{'METHOD'} eq 'PPPOE_PLUGIN' ) { - $pppsettings{'MTU'} = '1492'; - $pppsettings{'MRU'} = '1492'; - } else { - $pppsettings{'MTU'} = '1452'; - $pppsettings{'MRU'} = '1452'; - } + $pppsettings{'MTU'} = '1492'; + $pppsettings{'MRU'} = '1492'; $pppsettings{'DIALMODE'} = 'T'; $pppsettings{'MAXRETRIES'} = 5; $pppsettings{'HOLDOFF'} = 30; @@ -899,7 +907,13 @@ sub initprofile $pppsettings{'DNS'} = 'Automatic'; $pppsettings{'DEBUG'} = 'off'; $pppsettings{'BACKUPPROFILE'} = $pppsettings{'PROFILE'}; - + $pppsettings{'IPTVSERVERS'} = '192.168.2.51/32'; + $pppsettings{'IPTV'} = 'disable'; + + if ( -e '/usr/local/bin/igmpproxy'){ + $pppsettings{'IPTV'} = 'enable'; + } + # Get PPPoE settings so we can see if PPPoE is enabled or not. &General::readhash("${General::swroot}/ethernet/settings", \%netsettings);