zoneconf.cgi: Fix VLAN tag range check

Use the correct VLAN tag range 1-4094 and add an error message
to the range check.
The missing error message was discovered by Jonatan.

Signed-off-by: Leo-Andres Hofmann <hofmann@leo-andres.de>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
This commit is contained in:
Leo-Andres Hofmann
2021-03-21 22:23:03 +01:00
committed by Michael Tremer
parent c5977469be
commit 715aa887b6
4 changed files with 14 additions and 6 deletions

View File

@@ -912,6 +912,7 @@
< zoneconf val stp zone mode error < zoneconf val stp zone mode error
< zoneconf val vlan amount assignment error < zoneconf val vlan amount assignment error
< zoneconf val vlan tag assignment error < zoneconf val vlan tag assignment error
< zoneconf val vlan tag range error
< zoneconf val zoneslave amount error < zoneconf val zoneslave amount error
############################################################################ ############################################################################
# Checking cgi-bin translations for language: fr # # Checking cgi-bin translations for language: fr #
@@ -933,6 +934,7 @@
< zoneconf stp priority < zoneconf stp priority
< zoneconf val stp priority range error < zoneconf val stp priority range error
< zoneconf val stp zone mode error < zoneconf val stp zone mode error
< zoneconf val vlan tag range error
############################################################################ ############################################################################
# Checking cgi-bin translations for language: it # # Checking cgi-bin translations for language: it #
############################################################################ ############################################################################
@@ -1322,6 +1324,7 @@
< zoneconf val stp zone mode error < zoneconf val stp zone mode error
< zoneconf val vlan amount assignment error < zoneconf val vlan amount assignment error
< zoneconf val vlan tag assignment error < zoneconf val vlan tag assignment error
< zoneconf val vlan tag range error
< zoneconf val zoneslave amount error < zoneconf val zoneslave amount error
############################################################################ ############################################################################
# Checking cgi-bin translations for language: nl # # Checking cgi-bin translations for language: nl #
@@ -1766,6 +1769,7 @@
< zoneconf val stp zone mode error < zoneconf val stp zone mode error
< zoneconf val vlan amount assignment error < zoneconf val vlan amount assignment error
< zoneconf val vlan tag assignment error < zoneconf val vlan tag assignment error
< zoneconf val vlan tag range error
< zoneconf val zoneslave amount error < zoneconf val zoneslave amount error
############################################################################ ############################################################################
# Checking cgi-bin translations for language: pl # # Checking cgi-bin translations for language: pl #
@@ -2652,6 +2656,7 @@
< zoneconf val stp zone mode error < zoneconf val stp zone mode error
< zoneconf val vlan amount assignment error < zoneconf val vlan amount assignment error
< zoneconf val vlan tag assignment error < zoneconf val vlan tag assignment error
< zoneconf val vlan tag range error
< zoneconf val zoneslave amount error < zoneconf val zoneslave amount error
############################################################################ ############################################################################
# Checking cgi-bin translations for language: ru # # Checking cgi-bin translations for language: ru #
@@ -3545,6 +3550,7 @@
< zoneconf val stp zone mode error < zoneconf val stp zone mode error
< zoneconf val vlan amount assignment error < zoneconf val vlan amount assignment error
< zoneconf val vlan tag assignment error < zoneconf val vlan tag assignment error
< zoneconf val vlan tag range error
< zoneconf val zoneslave amount error < zoneconf val zoneslave amount error
############################################################################ ############################################################################
# Checking cgi-bin translations for language: tr # # Checking cgi-bin translations for language: tr #
@@ -3741,4 +3747,5 @@
< zoneconf val stp zone mode error < zoneconf val stp zone mode error
< zoneconf val vlan amount assignment error < zoneconf val vlan amount assignment error
< zoneconf val vlan tag assignment error < zoneconf val vlan tag assignment error
< zoneconf val vlan tag range error
< zoneconf val zoneslave amount error < zoneconf val zoneslave amount error

View File

@@ -279,11 +279,10 @@ if ($cgiparams{"ACTION"} eq $Lang::tr{"save"}) {
} }
$VALIDATE_nic_check{"VLAN $mac $vlan_tag"} = 1; $VALIDATE_nic_check{"VLAN $mac $vlan_tag"} = 1;
if (! looks_like_number($vlan_tag)) { # check VLAN tag range: 1..4094 (0, 4095 are reserved)
last; unless (looks_like_number($vlan_tag) && ($vlan_tag >= 1) && ($vlan_tag <= 4094)) {
} $VALIDATE_error = $Lang::tr{"zoneconf val vlan tag range error"};
if ($vlan_tag < 1 || $vlan_tag > 4095) {
last; last;
} }
@@ -486,7 +485,7 @@ END
<option value="NATIVE" $access_selected{"NATIVE"}>$Lang::tr{"zoneconf access native"}</option> <option value="NATIVE" $access_selected{"NATIVE"}>$Lang::tr{"zoneconf access native"}</option>
<option value="VLAN" $access_selected{"VLAN"} $vlan_disabled>$Lang::tr{"zoneconf access vlan"}</option> <option value="VLAN" $access_selected{"VLAN"} $vlan_disabled>$Lang::tr{"zoneconf access vlan"}</option>
</select> </select>
<input type="number" class="vlanid" id="TAG-$uc-$mac" name="TAG $uc $mac" min="1" max="4095" value="$zone_vlan_id" required $field_disabled> <input type="number" class="vlanid" id="TAG-$uc-$mac" name="TAG $uc $mac" min="1" max="4094" value="$zone_vlan_id" required $field_disabled>
</td> </td>
END END
; ;

View File

@@ -2988,6 +2988,7 @@
'zoneconf val stp zone mode error' => 'STP kann nur aktiviert werden, wenn sich die Zone im Brückenmodus befindet', 'zoneconf val stp zone mode error' => 'STP kann nur aktiviert werden, wenn sich die Zone im Brückenmodus befindet',
'zoneconf val vlan amount assignment error' => 'Pro Zone kann nur ein VLAN verwendet werden.', 'zoneconf val vlan amount assignment error' => 'Pro Zone kann nur ein VLAN verwendet werden.',
'zoneconf val vlan tag assignment error' => 'Pro Netzwerkkarte kann derselbe VLAN-Tag nur einmal verwendet werden.', 'zoneconf val vlan tag assignment error' => 'Pro Netzwerkkarte kann derselbe VLAN-Tag nur einmal verwendet werden.',
'zoneconf val vlan tag range error' => 'VLAN-Tag muss im Bereich 1-4094 liegen.',
'zoneconf val zoneslave amount error' => 'Wenn eine Zone nicht im Brückenmodus ist, kann ihr nur eine Netzwerkkarte zugewiesen werden.', 'zoneconf val zoneslave amount error' => 'Wenn eine Zone nicht im Brückenmodus ist, kann ihr nur eine Netzwerkkarte zugewiesen werden.',
); );

View File

@@ -3037,6 +3037,7 @@
'zoneconf val stp zone mode error' => 'STP can only be enabled if the zone is in bridge mode', 'zoneconf val stp zone mode error' => 'STP can only be enabled if the zone is in bridge mode',
'zoneconf val vlan amount assignment error' => 'A zone cannot have more than one VLAN assigned.', 'zoneconf val vlan amount assignment error' => 'A zone cannot have more than one VLAN assigned.',
'zoneconf val vlan tag assignment error' => 'You cannot use the same VLAN tag more than once per NIC.', 'zoneconf val vlan tag assignment error' => 'You cannot use the same VLAN tag more than once per NIC.',
'zoneconf val vlan tag range error' => 'VLAN tag must be in the range of 1-4094.',
'zoneconf val zoneslave amount error' => 'A zone that is not in bridge mode can\'t have more than one NIC assigned', 'zoneconf val zoneslave amount error' => 'A zone that is not in bridge mode can\'t have more than one NIC assigned',
); );