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

Catch the interface long error during parsing

Ticket: CM-5882
Reviewed By:
Testing Done:
This commit is contained in:
Roopa Prabhu
2015-07-08 21:08:43 -07:00
parent 0f6dc7e67a
commit 9432c6717e
2 changed files with 4 additions and 13 deletions

View File

@ -754,7 +754,6 @@ class ifupdownMain(ifupdownBase):
"""
new_ifacenames = []
err_iface = ''
ifnamsiz_error = ''
for i in ifacenames:
ifaceobjs = self.get_ifaceobjs(i)
if not ifaceobjs:
@ -766,19 +765,13 @@ class ifupdownMain(ifupdownBase):
if not ifaceobjs:
err_iface += ' ' + ri
else:
if utils.check_ifname_size_invalid(ri):
ifnamsiz_error += ' ' + ri
new_ifacenames.append(ri)
else:
err_iface += ' ' + i
else:
if utils.check_ifname_size_invalid(i):
ifnamsiz_error += ' ' + i
new_ifacenames.append(i)
if err_iface:
raise Exception('cannot find interfaces:%s' %err_iface)
if ifnamsiz_error:
raise Exception('the following interface names are too long:%s' %ifnamsiz_error)
return new_ifacenames
def _iface_whitelisted(self, auto, allow_classes, excludepats, ifacename):
@ -943,8 +936,6 @@ class ifupdownMain(ifupdownBase):
else:
self.populate_dependency_info(ops)
if filtered_ifacenames:
filtered_ifacenames = self._preprocess_ifacenames(filtered_ifacenames)
try:
self._sched_ifaces(filtered_ifacenames, ops,
skipupperifaces=skipupperifaces,
@ -1074,8 +1065,6 @@ class ifupdownMain(ifupdownBase):
elif ops[0] == 'query-raw':
return self.print_ifaceobjs_raw(filtered_ifacenames)
if filtered_ifacenames:
filtered_ifacenames = self._preprocess_ifacenames(filtered_ifacenames)
self._sched_ifaces(filtered_ifacenames, ops,
followdependents=True if self.WITH_DEPENDS else False)
@ -1160,7 +1149,6 @@ class ifupdownMain(ifupdownBase):
return
self.logger.info('reload: scheduling up on interfaces: %s'
%str(interfaces_to_up))
interfaces_to_up = self._preprocess_ifacenames(interfaces_to_up)
self._sched_ifaces(interfaces_to_up, upops,
followdependents=True if self.WITH_DEPENDS else False)
if self.DRYRUN:
@ -1278,7 +1266,6 @@ class ifupdownMain(ifupdownBase):
self.logger.info('reload: scheduling up on interfaces: %s'
%str(filtered_ifacenames))
filtered_ifacenames = self._preprocess_ifacenames(filtered_ifacenames)
try:
self._sched_ifaces(filtered_ifacenames, upops,
followdependents=True if self.WITH_DEPENDS else False)

View File

@ -219,6 +219,10 @@ class networkInterfaces():
iface_attrs = re.split(self._ws_split_regex, iface_line)
ifacename = iface_attrs[1]
if utils.check_ifname_size_invalid(ifacename):
self._parse_warn(self._currentfile, lineno,
'%s: interface name too long' %ifacename)
# in cases where mako is unable to render the template
# or incorrectly renders it due to user template
# errors, we maybe left with interface names with