diff options
| author | Daniil Baturin <daniil@vyos.io> | 2023-10-12 15:35:54 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-10-12 15:35:54 +0100 |
| commit | e55f0793234975e0fb69f6121945e9556556ea44 (patch) | |
| tree | a801faafdfec6e284be72a049d8bb174c3938b65 /python/vyos/ifconfig | |
| parent | 227e3f2876e504a4e3dc52b009d378b675e5ce51 (diff) | |
| parent | aa0282ceb379df1ab3cc93e4bd019134d37f0d89 (diff) | |
| download | vyos-1x-e55f0793234975e0fb69f6121945e9556556ea44.tar.gz vyos-1x-e55f0793234975e0fb69f6121945e9556556ea44.zip | |
Merge pull request #2277 from aapostoliuk/T5254-1-sagitta
bonding: T5254: Fixed changing ethernet when it is a bond member
Diffstat (limited to 'python/vyos/ifconfig')
| -rw-r--r-- | python/vyos/ifconfig/bond.py | 13 | ||||
| -rw-r--r-- | python/vyos/ifconfig/ethernet.py | 34 |
2 files changed, 47 insertions, 0 deletions
diff --git a/python/vyos/ifconfig/bond.py b/python/vyos/ifconfig/bond.py index d1d7d48c4..45e6e4c16 100644 --- a/python/vyos/ifconfig/bond.py +++ b/python/vyos/ifconfig/bond.py @@ -92,6 +92,19 @@ class BondIf(Interface): } }} + @staticmethod + def get_inherit_bond_options() -> list: + """ + Returns list of option + which are inherited from bond interface to member interfaces + :return: List of interface options + :rtype: list + """ + options = [ + 'mtu' + ] + return options + def remove(self): """ Remove interface from operating system. Removing the interface diff --git a/python/vyos/ifconfig/ethernet.py b/python/vyos/ifconfig/ethernet.py index 285542057..aa1e87744 100644 --- a/python/vyos/ifconfig/ethernet.py +++ b/python/vyos/ifconfig/ethernet.py @@ -75,6 +75,40 @@ class EthernetIf(Interface): }, }} + @staticmethod + def get_bond_member_allowed_options() -> list: + """ + Return list of options which are allowed for changing, + when interface is a bond member + :return: List of interface options + :rtype: list + """ + bond_allowed_sections = [ + 'description', + 'disable', + 'disable_flow_control', + 'disable_link_detect', + 'duplex', + 'eapol.ca_certificate', + 'eapol.certificate', + 'eapol.passphrase', + 'mirror.egress', + 'mirror.ingress', + 'offload.gro', + 'offload.gso', + 'offload.lro', + 'offload.rfs', + 'offload.rps', + 'offload.sg', + 'offload.tso', + 'redirect', + 'ring_buffer.rx', + 'ring_buffer.tx', + 'speed', + 'hw_id' + ] + return bond_allowed_sections + def __init__(self, ifname, **kargs): super().__init__(ifname, **kargs) self.ethtool = Ethtool(ifname) |
