def lookup(self, name): """ Populate info using runtime information from /sys/class/net files for active interfaces and for inactive bond and vlan interfaces from cfg files :param name: :return: """ try: if name in ethtool.get_devices(): info = netinfo.get_interface_info(name) return info elif cfginterfaces.is_cfgfileexist(name): type = cfginterfaces.get_type(name).lower() if type in [cfginterfaces.IFACE_BOND, cfginterfaces.IFACE_VLAN]: raise ValueError device = cfginterfaces.get_device(name) info = {'device': device, 'type': cfginterfaces.get_type(name), 'status': "down", 'ipaddr': "", 'netmask': "", 'macaddr': ""} return info else: raise ValueError('unknown interface: %s' % name) except ValueError: raise NotFoundError("GINNET0014E", {'name': name})
def lookup(self, name): try: info = netinfo.get_interface_info(name) except ValueError: raise NotFoundError("KCHIFACE0001E", {'name': name}) info['editable'] = self._is_interface_editable(name) return info
def _get_interface_info(self, name): try: info = netinfo.get_interface_info(name) except ValueError: raise NotFoundError("GINNET0014E", {'name': name}) if not info['ipaddr']: info['ipaddr'], info['netmask'] = \ self._get_static_config_interface_address(name) return info
def _get_interface_info(self, name): try: info = netinfo.get_interface_info(name) except ValueError: raise NotFoundError("KCHIFACE0001E", {'name': name}) if not info['ipaddr']: info['ipaddr'], info['netmask'] = \ self._get_static_config_interface_address(name) return info
def lookup(self, name): """ Populate info using runtime information from /sys/class/net files for active interfaces and for inactive bond and vlan interfaces from cfg files :param name: :return: """ def get_actions_info_without_method(kernel_mod): info = self.actions_mod.get(kernel_mod, {}) for action in info.keys(): action_info = info[action] action_info.pop('method') info[action] = action_info return info try: if name in ethtool.get_devices(): info = netinfo.get_interface_info(name) elif cfginterfaces.is_cfgfileexist(name): type = cfginterfaces.get_type(name).lower() if type in [cfginterfaces.IFACE_BOND, cfginterfaces.IFACE_VLAN]: raise ValueError device = cfginterfaces.get_device(name) info = {'device': device, 'type': cfginterfaces.get_type(name), 'status': "down", 'ipaddr': "", 'netmask': "", 'macaddr': "", 'module': netinfo.get_interface_kernel_module(name)} else: raise ValueError('unknown interface: %s' % name) info['actions'] = get_actions_info_without_method(info['module']) return info except ValueError: raise NotFoundError("GINNET0014E", {'name': name})