1
0
mirror of https://github.com/CumulusNetworks/ifupdown2.git synced 2024-05-06 15:54:50 +00:00

Don't allow IP addresses on ports enslaved in bonds or bridges

Ticket: CM-5146
Reviewed By: roopa,jtoppins
Testing Done: built new ifupdown package and ran testifupdown2 suite of tests

This patch prevents enslaved interfaces from having IP addresses.
(cherry picked from commit 0c00606fbc76db11557a8e946310e93a2b376aa7)
(cherry picked from commit dc30987acfc6af356b9e055db95d94ae45f0de9f)
This commit is contained in:
Sam Tannous
2015-06-02 20:35:08 -04:00
parent 3d44fbd0c9
commit 0a3bee28ca
7 changed files with 44 additions and 1 deletions

View File

@@ -439,6 +439,9 @@ class ifupdownMain(ifupdownBase):
else:
del_list.append(d)
if ni:
if upperifaceobj.link_kind & \
(ifaceLinkKind.BOND | ifaceLinkKind.BRIDGE):
ni.role |= ifaceRole.SLAVE
ni.add_to_upperifaces(upperifaceobj.name)
if upperifaceobj.link_type == ifaceLinkType.LINK_MASTER:
ni.link_type = ifaceLinkType.LINK_SLAVE
@@ -446,6 +449,9 @@ class ifupdownMain(ifupdownBase):
for di in dilist:
di.inc_refcnt()
di.add_to_upperifaces(upperifaceobj.name)
if upperifaceobj.link_kind & \
(ifaceLinkKind.BOND | ifaceLinkKind.BRIDGE):
di.role |= ifaceRole.SLAVE
if upperifaceobj.link_type == ifaceLinkType.LINK_MASTER:
di.link_type = ifaceLinkType.LINK_SLAVE
for d in del_list: