Age | Commit message (Collapse) | Author |
|
Add support for the configtree diff algorithm. A new function
ConfigDiff().is_node_changed(path) -> bool
is added to recursively detect changes in the tree below the node at
path; existing functions take the keyword argument 'recursive: bool' to
apply the algorithm in place of the existing, non-recursive, comparison.
(cherry picked from commit e5d04b20be0ef270d20f1d5ac9203b3a03649135)
|
|
The DiffTree class maintains both the 'sub'(-tract) configtree,
containing all paths in the LHS of the comparison that are not in the
RHS, and the 'delete' configtree: the delete tree is the minimal subtree
containing only the first node of a path not present in the RHS. It is
the delete tree that is needed to produce 'delete' commands for config
mode, whereas the 'sub' tree contains full information, needed for
recursively detecting changes to a node.
(cherry picked from commit 193cbd15ba39a41614c63b997e6a62254589158a)
|
|
(cherry picked from commit 4625fd41f99ddf77c104a657cd90a1ddf5449dd8)
|
|
The return value of diff_tree is now a single config_tree, with initial
children of names: ["add", "delete", "inter"] containing the config
sub-trees of added paths; deleted paths; and intersection, respectively.
The simplifies dumping to json, and checking existence of paths, hence,
of node changes.
(cherry picked from commit 3d28528ff84b4e874faf80028709bd08b2956933)
|
|
(cherry picked from commit ff7e2cd622cf3679cd9265b2cb766395a1830f50)
|
|
(cherry picked from commit 2ee94418ce24429dbf6a52c2a327ed08a1935958)
|
|
T4324, T4338, T4339 WWAN interface bugfixes
|
|
T4331: IPv6 link local addresses are not configured when an interface is in a VRF (equuleus)
|
|
(cherry picked from commit 957f73ed8c2c22afd5e56adc36b4d032b3f1a5f1)
|
|
If we have link-local static address and vrf, for example:
set interfaces ethernet eth2 address 'fe80::5200:ff:fe55:222/64'
set interfaces ethernet eth2 vrf 'foo'
This IPv6 address was assigned before vrf, as result after
attaching the intreface to vrf we lose this static linklocal
address
DEBUG/IFCONFIG cmd 'ip addr add fe80::5200:ff:fe55:222/64 dev eth2'
DEBUG/IFCONFIG cmd 'ip link set dev eth2 master foo'
DEBUG/IFCONFIG cmd 'ip addr add fe80::5208:ff:fe13:2/64 dev eth2'
This commit fixes this, the address is assigned after vrf assign
(cherry picked from commit d6e22b28887c7a3f7d2f8b955c2e90bcadaeeeba)
|
|
(cherry picked from commit 15c94a8706622927850eba8c22fcff2df32978b4)
|
|
This extends the fix from 53e20097 ("vyos.ifconfig: T4330: bugfix changing MTU
when IPv6 is disabled") by ordering the execution in a way the Kernel does not
complain.
(cherry picked from commit 601ab19fd8c81a998b3c966cc83b85ed60ac5ae0)
|
|
Commit f8b3d8999c ("ipv6: T4319: do not configure IPv6 related settings if it's
disabled") moved the MTU configuration part under the code path which is only
run if IPv6 is enabled on the system.
This prevented MTU changes on IPv6 disabled systems.
(cherry picked from commit 53e20097d227ebf4bdb4dc6c85427ec9c5ec3982)
|
|
(cherry picked from commit 60f009defadb9d36bf84def1e839cb11a0b3d619)
|
|
(cherry picked from commit df0fbfeedce0f163e9d10be21d58ad4dc797a28a)
|
|
|
|
(cherry picked from commit 9d3acc2b55f2d1c563f1941e59c98c159211dc58)
|
|
(cherry picked from commit 364009e4317fb5c6732635726b511613aa2ed519)
|
|
(cherry picked from commit f8b3d8999cbea988ce8e7d303957558308ddc1bc)
|
|
(cherry picked from commit 52cb6185a4a51ffa92f10e0ded55a943bc21bc60)
|
|
The iavf, ice, and i40e drivers do not support speed, flow, or duplex control
using ethtool. As a result, interface configuration changes fail to commit when
using those drivers. This patch fixes that by correctly marking those drivers
as not supporting those controls.
(cherry picked from commit 2894b52454311f8e011bed910704064be7471275)
|
|
If a valueLess node is added or removed from the CLI, a call to
leaf_node_changed() will not detect it.
If node is valueLess, on change old or new (depending on addition or deletion)
will be {} and is treated as None.
Add handler for this special case where old or new is an instance of a
dictionary but empty.
(cherry picked from commit 149f704a172fb14f16d0ba00ef237b972539492f)
|
|
(cherry picked from commit c3661c8d5d7e8f5c1d040cadf134e87f0d77e28e)
|
|
(cherry picked from commit 3a605ad020d8d20b08a72cb1284f6e590d1fd7b5)
|
|
VXLAN does support using multiple remotes but VyOS does not. Add the ability
to set multiple remotes and add their flood lists using "bridge" command.
(cherry picked from commit 0ecddff7cffa8900d351d5c15e32420f9d780c0b)
|
|
In the past whenever a change happened to any interface and it was configured
as a DHCP client, VyOS always had a breif outage as DHCP released the old lease
and re-aquired a new one - bad!
This commit changes the behavior that DHCP client is only restarted if any one
of the possible options one can set for DHCP client under the "dhcp-options"
node is altered.
(cherry picked from commit 3a1a7c40a13ee9f5561823a79876d88d3f5bf053)
|
|
(cherry picked from commit 9e626ce7bad2bd846826822a3622fedf2d937e09)
|
|
VLAN isolation can not be "set" when interface is of type wifi.
(cherry picked from commit 1ceaed55a629c92cf42baccdef4106e8d0e4914e)
|
|
(cherry picked from commit b40315b3c5051888f499961e63410e14c5d1bad7)
|
|
(cherry picked from commit 812d9770619b968b04961aebf3944fde13df491b)
|
|
(cherry picked from commit 5e7e96380b314587bbd8bd584848d39caef86f3f)
|
|
|
|
Ability to see interface type "input" ifbX from op-mode
(cherry picked from commit 5fdf4e5988344f7a890fe351183b58b8e21699c2)
|
|
|
|
|
|
(cherry picked from commit 0e3c35e6517f5cfebb4206c735a2ea976a7fd383)
|
|
(cherry picked from commit 4948380a588dea59a01e6e33b9b8e1524ba6a4ed)
|
|
Commit e8c6595fc47 ("vyos.ifconfig: T2738: do not remove OS assigned IP
addresses from interface") addressed an issue with IP addresses added to
interfaces by daemons and not by the CLI. The solution in this commit for IP
address removal unfortunately did not cover VLAN (802.1q and 802.1ad) IP address
removal in the same way as it is done for non VLAN interfaces. The code was
missing.
|
|
(cherry picked from commit e51b9444a6a6a4640445c22a7f71ba1e035876da)
|
|
|
|
to avoid confusing 'v' in GENEVE interface prefix ('gnv')
with a "vXXX" part of a VRRP interface
|
|
(cherry picked from commit ae16a51506cdc4de8e18f4678b8f55654d4abbba)
|
|
Interface will still be visible to the operating system.
(cherry picked from commit a14f93adfa633eabff90524e1f83d56092ec0c3c)
|
|
Improve commend in WWANIf.remove() - remove() was implemented in commit 61e4d75a
("wwan: T3620: place interface in A/D state when removed").
(cherry picked from commit d9a19b77a56031fa3fbfa43a85c8be7ee83ae3d7)
|
|
|
|
interfaces
|
|
(cherry picked from commit b168b4cc7da456f14714d917cdc7a1c6b8df9af5)
|
|
(cherry picked from commit d3d4e3bedcc0b43e16554b1832b43da9d41e651f)
|
|
Generic get_removed_vlans() function replaced the entire config dict when any
QinQ vif-c subinterface was deleted.
(cherry picked from commit b3be36586c85005538d5cc994c7c9694b9907d81)
|
|
|