mirror of
https://github.com/CumulusNetworks/ifupdown2.git
synced 2024-05-06 15:54:50 +00:00
address.py: default value for mtu when mtu attribute is removed
Ticket: CM-9449 Reviewed By: Roopa Testing Done: Adding/removing mtu attribute to ifaces while doing ifup/ifdown/ifquery/ifreload
This commit is contained in:
@ -13,6 +13,7 @@ try:
|
||||
from ifupdownaddons.modulebase import moduleBase
|
||||
from ifupdownaddons.iproute2 import iproute2
|
||||
from ifupdownaddons.dhclient import dhclient
|
||||
import ifupdown.policymanager as policymanager
|
||||
import ifupdown.rtnetlink_api as rtnetlink_api
|
||||
import ifupdown.ifupdownconfig as ifupdownConfig
|
||||
import ifupdown.ifupdownflags as ifupdownflags
|
||||
@ -73,6 +74,7 @@ class address(moduleBase):
|
||||
moduleBase.__init__(self, *args, **kargs)
|
||||
self.ipcmd = None
|
||||
self._bridge_fdb_query_cache = {}
|
||||
self.default_mtu = policymanager.policymanager_api.get_attr_default(module_name=self.__class__.__name__, attr='mtu')
|
||||
|
||||
def _address_valid(self, addrs):
|
||||
if not addrs:
|
||||
@ -261,6 +263,10 @@ class address(moduleBase):
|
||||
mtu = ifaceobj.get_attr_value_first('mtu')
|
||||
if mtu:
|
||||
self.ipcmd.link_set(ifaceobj.name, 'mtu', mtu)
|
||||
elif self.default_mtu:
|
||||
running_mtu = self.ipcmd.link_get_mtu(ifaceobj.name)
|
||||
if running_mtu != self.default_mtu:
|
||||
self.ipcmd.link_set(ifaceobj.name, 'mtu', self.default_mtu)
|
||||
alias = ifaceobj.get_attr_value_first('alias')
|
||||
if alias:
|
||||
self.ipcmd.link_set_alias(ifaceobj.name, alias)
|
||||
@ -315,6 +321,9 @@ class address(moduleBase):
|
||||
#self.ipcmd.addr_del(ifaceobj.name, ifaceobj.get_attr_value('address')[0])
|
||||
else:
|
||||
self.ipcmd.del_addr_all(ifaceobj.name)
|
||||
mtu = ifaceobj.get_attr_value_first('mtu')
|
||||
if (mtu and self.default_mtu and (mtu != self.default_mtu)):
|
||||
self.ipcmd.link_set(ifaceobj.name, 'mtu', self.default_mtu)
|
||||
alias = ifaceobj.get_attr_value_first('alias')
|
||||
if alias:
|
||||
filename = '/sys/class/net/%s/ifalias' %ifaceobj.name
|
||||
|
Reference in New Issue
Block a user