# -*- coding: utf-8 -*-
# Copyright 2019 Red Hat
# GNU General Public License v3.0+
# (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
# utils
from __future__ import absolute_import, division, print_function
__metaclass__ = type
def get_interface_number(name):
digits = ''
for char in name:
if char.isdigit() or char in '/.':
digits += char
return digits
def normalize_interface(name):
"""Return the normalized interface name
"""
if not name:
return None
if name.lower().startswith('et'):
if_type = 'Ethernet'
elif name.lower().startswith('lo'):
if_type = 'Loopback'
elif name.lower().startswith('ma'):
if_type = 'Management'
elif name.lower().startswith('po'):
if_type = 'Port-Channel'
elif name.lower().startswith('tu'):
if_type = 'Tunnel'
elif name.lower().startswith('vl'):
if_type = 'Vlan'
elif name.lower().startswith('vx'):
if_type = 'Vxlan'
else:
if_type = None
number_list = name.split(' ')
if len(number_list) == 2:
number = number_list[-1].strip()
else:
number = get_interface_number(name)
if if_type:
proper_interface = if_type + number
else:
proper_interface = name
return proper_interface
Anons79 File Manager Version 1.0, Coded By Anons79
Email: [email protected]