mirror of
https://github.com/pfsense/pfsense.git
synced 2025-10-26 11:38:35 +00:00
Optimize adding new members to QinQ to evitate recreating the whole QinQ members.
This commit is contained in:
parent
c1289cfd78
commit
5155bb3302
@ -155,10 +155,14 @@ if ($_POST) {
|
||||
$addmembers = array_diff($nmembers, $omembers);
|
||||
if (count($addmembers) > 0) {
|
||||
foreach ($addmembers as $member) {
|
||||
$vlan = array();
|
||||
$vlan['if'] = "vlan{$_POST['tag']}";
|
||||
$vlan['tag'] = $member;
|
||||
interface_qinq2_configure($vlan);
|
||||
$if = "vlan{$_POST['tag']}";
|
||||
$vlanif = "{$if}_{$member}";
|
||||
$macaddr = get_interface_mac($if);
|
||||
mwexec("/usr/sbin/ngctl mkpeer {$if}qinq: eiface {$if}{$member} ether");
|
||||
mwexec("/usr/sbin/ngctl name {$if}qinq:{$if}{$tag} {$if}h{$member}");
|
||||
mwexec("/usr/sbin/ngctl msg {$if}qinq: addfilter '{ vlan={$member} hook=\\\"{$if}{$member}\\\" }'");
|
||||
mwexec("/usr/sbin/ngctl msg {$if}h{$tag}: setifname \\\"{$vlanif}\\\"");
|
||||
mwexec("/usr/sbin/ngctl msg {$vlanif}: setenaddr {$macaddr}");
|
||||
}
|
||||
}
|
||||
$a_qinqs[$id] = $qinqentry;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user