(filter) add prio, set-prio to new style FilterRule class as well (plugin support + single parsing in 17.7)

This commit is contained in:
Ad Schellevis 2017-02-14 21:47:12 +01:00
parent 4f3239c7b3
commit e6dccb60aa

View File

@ -54,6 +54,8 @@ class FilterRule
'icmp6-type' => 'parsePlain,icmp6-type {,}',
'flags' => 'parsePlain, flags ',
'state' => 'parseState',
'set-prio' => 'parsePlain, set prio ',
'prio' => 'parsePlain, prio ',
'allowopts' => 'parseBool,allow-opts',
'label' => 'parsePlain,label ",",63'
);
@ -81,7 +83,7 @@ class FilterRule
if (!empty($maxsize) && strlen($value) > $maxsize) {
$value = substr($value, 0, $maxsize);
}
return $value == '' ? "" : $prefix . $value . $suffix . " ";
return $value === '' ? "" : $prefix . $value . $suffix . " ";
}
/**
@ -238,6 +240,11 @@ class FilterRule
if ($ipproto == 'inet6' && !empty($tmp['protocol']) && $tmp['protocol'] == "icmp") {
$tmp['protocol'] = 'ipv6-icmp';
}
// set prio
if (isset($tmp['set-prio']) && $tmp['set-prio'] !== ""
&& isset($tmp['set-prio-low']) && $tmp['set-prio-low'] !== "" ) {
$tmp['set-prio'] = "({$tmp['set-prio']}, {$tmp['set-prio-low']})" ;
}
$result[] = $tmp;
}
}