From d4af74b78ab66a59d42a9098c21e9b15229295b4 Mon Sep 17 00:00:00 2001 From: Arne Fitzenreiter Date: Fri, 6 Jun 2014 10:45:59 +0200 Subject: [PATCH] modem-status: add more ttyUSB and ttyACM ports. --- config/cfgroot/header.pl | 4 +- html/cgi-bin/modem-status.cgi | 2 +- html/cgi-bin/pppsetup.cgi | 74 +++++++++++++++++++++++++++++++---- 3 files changed, 71 insertions(+), 9 deletions(-) mode change 100755 => 100644 html/cgi-bin/modem-status.cgi diff --git a/config/cfgroot/header.pl b/config/cfgroot/header.pl index bbb7e21f45..d90086d382 100644 --- a/config/cfgroot/header.pl +++ b/config/cfgroot/header.pl @@ -45,6 +45,7 @@ my %menuhash = (); my $menu = \%menuhash; %settings = (); %ethsettings = (); +%pppsettings = (); @URI = (); ### Make sure this is an SSL request @@ -57,6 +58,7 @@ if ($ENV{'SERVER_ADDR'} && $ENV{'HTTPS'} ne 'on') { ### Initialize environment &General::readhash("${swroot}/main/settings", \%settings); &General::readhash("${swroot}/ethernet/settings", \%ethsettings); +&General::readhash("${swroot}/ppp/settings", \%pppsettings); $language = $settings{'LANGUAGE'}; $hostname = $settings{'HOSTNAME'}; $hostnameintitle = 0; @@ -154,7 +156,7 @@ sub genmenu { $menu->{'01.system'}{'subMenu'}->{'21.wlan'}{'enabled'} = 1; } - if ($ethsettings{'RED_TYPE'} eq "PPPOE") { + if ( $ethsettings{'RED_TYPE'} eq "PPPOE" && $pppsettings{'MONPORT'} ne "" ) { $menu->{'02.status'}{'subMenu'}->{'74.modem-status'}{'enabled'} = 1; } } diff --git a/html/cgi-bin/modem-status.cgi b/html/cgi-bin/modem-status.cgi old mode 100755 new mode 100644 index d278c7720a..2d33a3d5e1 --- a/html/cgi-bin/modem-status.cgi +++ b/html/cgi-bin/modem-status.cgi @@ -2,7 +2,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2008 Michael Tremer & Christian Schmidt # +# Copyright (C) 2007-2014 IPFire Team # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # diff --git a/html/cgi-bin/pppsetup.cgi b/html/cgi-bin/pppsetup.cgi index 7bceb80ee7..33f521e756 100644 --- a/html/cgi-bin/pppsetup.cgi +++ b/html/cgi-bin/pppsetup.cgi @@ -2,7 +2,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007-2011 IPFire Team # +# Copyright (C) 2007-2014 IPFire Team # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -70,10 +70,10 @@ elsif ($pppsettings{'ACTION'} eq $Lang::tr{'refresh'}) } elsif ($pppsettings{'ACTION'} eq $Lang::tr{'save'}) { - if ($pppsettings{'TYPE'} =~ /^(modem|serial|isdn)$/ && $pppsettings{'COMPORT'} !~ /^(ttyS0|ttyS1|ttyS2|ttyS3|ttyS4|ttyACM0|ttyACM1|ttyACM2|ttyACM3|ttyUSB0|ttyUSB1|ttyUSB2|ttyUSB3|rfcomm0|rfcomm1|isdn1|isdn2)$/) { + if ($pppsettings{'TYPE'} =~ /^(modem|serial|isdn)$/ && $pppsettings{'COMPORT'} !~ /^(ttyS0|ttyS1|ttyS2|ttyS3|ttyS4|ttyACM[0-9]|ttyUSB[0-9]|rfcomm0|rfcomm1|isdn1|isdn2)$/) { $errormessage = $Lang::tr{'invalid input'}; goto ERROR; } - if ($pppsettings{'TYPE'} =~ /^(modem|serial|isdn)$/ && $pppsettings{'MONPORT'} !~ /^(ttyUSB0|ttyUSB1|ttyUSB2|ttyUSB3)$/) { + if ($pppsettings{'TYPE'} =~ /^(modem|serial|isdn)$/ && $pppsettings{'MONPORT'} !~ /^(|ttyACM[0-9]|ttyUSB[0-9]|rfcomm0|rfcomm1)$/) { $errormessage = $Lang::tr{'invalid input'}; goto ERROR; } if ($pppsettings{'TYPE'} =~ /^(modem|serial)$/ && $pppsettings{'DTERATE'} !~ /^(9600|19200|38400|57600|115200|230400|460800|921600)$/) { @@ -333,19 +333,49 @@ $selected{'COMPORT'}{'ttyACM0'} = ''; $selected{'COMPORT'}{'ttyACM1'} = ''; $selected{'COMPORT'}{'ttyACM2'} = ''; $selected{'COMPORT'}{'ttyACM3'} = ''; +$selected{'COMPORT'}{'ttyACM4'} = ''; +$selected{'COMPORT'}{'ttyACM5'} = ''; +$selected{'COMPORT'}{'ttyACM6'} = ''; +$selected{'COMPORT'}{'ttyACM7'} = ''; +$selected{'COMPORT'}{'ttyACM8'} = ''; +$selected{'COMPORT'}{'ttyACM9'} = ''; $selected{'COMPORT'}{'ttyUSB0'} = ''; $selected{'COMPORT'}{'ttyUSB1'} = ''; $selected{'COMPORT'}{'ttyUSB2'} = ''; $selected{'COMPORT'}{'ttyUSB3'} = ''; +$selected{'COMPORT'}{'ttyUSB4'} = ''; +$selected{'COMPORT'}{'ttyUSB5'} = ''; +$selected{'COMPORT'}{'ttyUSB6'} = ''; +$selected{'COMPORT'}{'ttyUSB7'} = ''; +$selected{'COMPORT'}{'ttyUSB8'} = ''; +$selected{'COMPORT'}{'ttyUSB9'} = ''; $selected{'COMPORT'}{'rfcomm0'} = ''; $selected{'COMPORT'}{'rfcomm1'} = ''; $selected{'COMPORT'}{$pppsettings{'COMPORT'}} = "selected='selected'"; $selected{'MONPORT'}{''} = ''; +$selected{'MONPORT'}{'ttyACM0'} = ''; +$selected{'MONPORT'}{'ttyACM1'} = ''; +$selected{'MONPORT'}{'ttyACM2'} = ''; +$selected{'MONPORT'}{'ttyACM3'} = ''; +$selected{'MONPORT'}{'ttyACM4'} = ''; +$selected{'MONPORT'}{'ttyACM5'} = ''; +$selected{'MONPORT'}{'ttyACM6'} = ''; +$selected{'MONPORT'}{'ttyACM7'} = ''; +$selected{'MONPORT'}{'ttyACM8'} = ''; +$selected{'MONPORT'}{'ttyACM9'} = ''; $selected{'MONPORT'}{'ttyUSB0'} = ''; $selected{'MONPORT'}{'ttyUSB1'} = ''; $selected{'MONPORT'}{'ttyUSB2'} = ''; $selected{'MONPORT'}{'ttyUSB3'} = ''; +$selected{'MONPORT'}{'ttyUSB4'} = ''; +$selected{'MONPORT'}{'ttyUSB5'} = ''; +$selected{'MONPORT'}{'ttyUSB6'} = ''; +$selected{'MONPORT'}{'ttyUSB7'} = ''; +$selected{'MONPORT'}{'ttyUSB8'} = ''; +$selected{'MONPORT'}{'ttyUSB9'} = ''; +$selected{'MONPORT'}{'rfcomm0'} = ''; +$selected{'MONPORT'}{'rfcomm1'} = ''; $selected{'MONPORT'}{$pppsettings{'MONPORT'}} = "selected='selected'"; $selected{'DTERATE'}{'9600'} = ''; @@ -582,16 +612,28 @@ END + + + + + + END ; if ($pppsettings{'TYPE'} ne 'serial' ) { print <$Lang::tr{'usb modem on acm0'} - - - + + + + + + + + + + END ; } @@ -608,6 +650,24 @@ END + + + + + + + + + + + + + + + + + + -- 2.39.5