summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-05-06Merge pull request #393 from jjakob/disable-address-fix-T2427Christian Poessinger
T2427: fix interface addressing, bugfix config library, migrate VLAN config to dicts, move VLAN adding to common function
2020-05-05pseudo-ethernet: T2427: move VLAN adding to common functionJernej Jakob
2020-05-05ethernet: T2427: move VLAN adding to common functionJernej Jakob
2020-05-05bonding: T2427: move VLAN adding to common functionJernej Jakob
2020-05-05configdict: T2427: clarify code commentsJernej Jakob
2020-05-05vlan: T2427: move code that applies VLANs to interface to common functionJernej Jakob
2020-05-05vlan: T2427: convert vlan config variables from lists to dictsJernej Jakob
Previously all vlan configs, which are dicts, were appended to a simple list, with the distinguishing 'id' stored inside the dicts themselves. This worked, but wasn't ideal. This commit converts them to dicts, where the key is the VLAN ID and value the config dict of that VLAN. This makes it posible to access single VLANs by their ID (key) and we can for-loop and get both the ID and config with: 'for vif_id, vif in conf["vif"].items():'
2020-05-05configdict: T2427: do not remove all addresses when disabling interfaceJernej Jakob
Commit 3fdf0093a introduced code that removed all addresses from an interface when that interface is disabled. This is wrong, as other configured services may be listening on these addresses and may fail to start if their configured address isn't present. It also caused a commit error when applying dhcp-server configuration: DHCP server configuration error! None of configured DHCP subnets does not have appropriate primary IP address on any broadcast interface. This commit reverts it to prior behavior, which was to just put the interface admin down and leave all addresses configured, other than the IPv6 'fe80::EUI-64/64' link-local, which it deletes, as the interface may not have a MAC if it's put down.
2020-05-05config: T2427: always return copies of listsJernej Jakob
Since lists in python are assigned by reference, taking the return value from these functions and modifying it will modify all other return values of functions that called the function before and did not explicitly copy it. To be safe, always make a copy of lists before returning them.
2020-05-05Merge pull request #384 from jjakob/bridge-fix-T2241Christian Poessinger
T2241: fix interfaces falling out of bridge
2020-05-04bridge: T2367: use simple 'ip addr flush' to flush member addressesJernej Jakob
We've already verified that all member interfaces don't have any addresses configured, so it should be safe to simply call 'ip addr flush' on them to flush the remaining addresses (e.g. IPv6 link-local)
2020-05-04bonding: T2367: use simple 'ip addr flush' to flush member addressesJernej Jakob
We've already verified that all member interfaces don't have any addresses configured, so it should be safe to simply call 'ip addr flush' on them to flush the remaining addresses (e.g. IPv6 link-local)
2020-05-04wirelessmodem: T2241: cleanup verify sectionJernej Jakob
- make error output more user friendly - replace .format with f-strings - split into lines less than ~80 characters long
2020-05-04wirelessmodem: T2241: fix falling out of bridge when changing settingsJernej Jakob
Previously, the interface was always deleted and recreated, which removed it from the bridge. - always re-add the interface back to any bridge it is part of
2020-05-04wirelessmodem: T2241: make address and bridge membership mutually exclusiveJernej Jakob
Bridge members should not have any addresses assigned.
2020-05-04wirelessmodem: T2241: make VRF and bond/bridge membership mutually exclusiveJernej Jakob
2020-05-04wireless: T2241: cleanup verify sectionJernej Jakob
- make error output more user friendly - replace .format with f-strings - split into lines less than ~80 characters long
2020-05-04wireless: T2241: fix falling out of bridge when changing settingsJernej Jakob
Previously, set_vrf was always called, which uses the same master and nomaster commands as bridge, so it removed the interface from the bridge. - add checks to make VRF and bridge membership mutually exclusive
2020-05-04wireless: T2241: make address and bridge membership mutually exclusiveJernej Jakob
Bridge members should not have any addresses assigned.
2020-05-04wireless: T2241: make VRF and bridge membership mutually exclusiveJernej Jakob
2020-05-04wireguard: T2241: cleanup verify sectionJernej Jakob
- make error output more user friendly - replace .format with f-strings - split into lines less than ~80 characters long
2020-05-04wireguard: T2241: fix falling out of bridge when changing settingsJernej Jakob
Previously, set_vrf was always called, which uses the same master and nomaster commands as bridge, so it removed the interface from the bridge. - add checks to make VRF and bridge membership mutually exclusive
2020-05-04wireguard: T2241: make address and bridge membership mutually exclusiveJernej Jakob
Bridge members should not have any addresses assigned.
2020-05-04wireguard: T2241: make VRF and bridge membership mutually exclusiveJernej Jakob
2020-05-04vxlan: T2241: cleanup verify sectionJernej Jakob
- make error output more user friendly - replace .format with f-strings - split into lines less than ~80 characters long
2020-05-04vxlan: T2241: fix falling out of bridge when changing settingsJernej Jakob
Previously, the interface was always deleted and recreated, which removed it from the bridge. - always re-add the interface back to any bridge it is part of
2020-05-04vxlan: T2241: make address and bridge membership mutually exclusiveJernej Jakob
Bridge members should not have any addresses assigned.
2020-05-04tunnel: T2241: cleanup verify sectionJernej Jakob
- make error output more user friendly - replace .format with f-strings - split into lines less than ~80 characters long
2020-05-04tunnel: T2241: fix falling out of bridge when changing settingsJernej Jakob
Previously, set_vrf was always called, which uses the same master and nomaster commands as bridge, so it removed the interface from the bridge. - add checks to make VRF and bridge membership mutually exclusive
2020-05-04tunnel: T2241: make address and bridge membership mutually exclusiveJernej Jakob
Bridge members should not have any addresses assigned.
2020-05-04tunnel: T2241: make VRF and bridge membership mutually exclusiveJernej Jakob
2020-05-04pseudo-ethernet: T2241: cleanup verify sectionJernej Jakob
- make error output more user friendly - replace .format with f-strings - split into lines less than ~80 characters long
2020-05-04pseudo-ethernet: T2241: fix falling out of bridge when changing settingsJernej Jakob
Previously, the interface was always deleted and recreated, which removed it from the bridge. - add checks to make VRF and bridge membership mutually exclusive - always re-add the interface back to any bridge it is part of
2020-05-04pseudo-ethernet: T2241: make address and bridge membership mutually exclusiveJernej Jakob
Bridge members should not have any addresses assigned.
2020-05-04pseudo-ethernet: T2241: make VRF and bridge membership mutually exclusiveJernej Jakob
2020-05-04l2tpv3: T2241: cleanup verify sectionJernej Jakob
- make error output more user friendly - replace .format with f-strings - split into lines less than ~80 characters long
2020-05-04l2tpv3: T2241: fix falling out of bridge when changing settingsJernej Jakob
Previously, the interface was always deleted and recreated, which removed it from the bridge. - always re-add the interface back to any bridge it is part of in case it is deleted and recreated
2020-05-04l2tpv3: T2241: make address and bridge membership mutually exclusiveJernej Jakob
Bridge members should not have any addresses assigned.
2020-05-04l2tpv3: T2241: add check for bridge membershipJernej Jakob
2020-05-04geneve: T2241: cleanup verify sectionJernej Jakob
- make error output more user friendly - replace .format with f-strings - split into lines less than ~80 characters long
2020-05-04geneve: T2241: fix falling out of bridge when changing settingsJernej Jakob
Previously, the interface was always deleted and recreated, which removed it from the bridge. - always re-add the interface back to any bridge it is part of in case it is deleted and recreated
2020-05-04geneve: T2241: make address and bridge membership mutually exclusiveJernej Jakob
Bridge members should not have any addresses assigned.
2020-05-04ethernet: T2241: fix falling out of bridge when changing settingsJernej Jakob
Previously, set_vrf was always called, which uses the same master and nomaster commands as bridge, so it removed the interface from the bridge. - add checks to make VRF and bridge membership mutually exclusive - always re-add the interface back to any bridge it is part of
2020-05-04ethernet: T2241: make address and bond membership exclusiveJernej Jakob
Bond members should not have any addresses assigned.
2020-05-04ethernet: T2241: make VRF and bond/bridge membership mutually exclusiveJernej Jakob
2020-05-04ethernet: T2241: add checks for bridge and bond membershipJernej Jakob
2020-05-04dummy: T2241: cleanup verify sectionJernej Jakob
- make error output more user friendly - replace .format with f-strings - split into lines less than ~80 characters long
2020-05-04dummy: T2241: fix falling out of bridge when changing settingsJernej Jakob
Previously, set_vrf was always called, which uses the same master and nomaster commands as bridge, so it removed the interface from the bridge. - add checks to make VRF and bridge membership mutually exclusive
2020-05-04dummy: T2241: make address and bridge membership mutually exclusiveJernej Jakob
Bridge members should not have any addresses assigned.
2020-05-04dummy: T2241: make VRF and bridge membership mutually exclusiveJernej Jakob