def get_interface_info(self, interface_name): """Return the interface information when its Mellanox and InfiniBand In case of Mellanox and InfiniBand interface we do the following: 1. Calculate the "InfiniBand MAC" according to InfiniBand GUID 2. Calculate the client-id according to InfiniBand GUID """ address = netutils.get_mac_addr(interface_name) if address is None: raise errors.IncompatibleHardwareMethodError() vendor = hardware._get_device_info(interface_name, 'net', 'vendor') if (len(address) != netutils.INFINIBAND_ADDR_LEN or vendor != MLNX_VENDOR_ID): raise errors.IncompatibleHardwareMethodError() mac_addr = _infiniband_address_to_mac(address) client_id = _generate_client_id(address) return hardware.NetworkInterface( interface_name, mac_addr, ipv4_address=netutils.get_ipv4_addr(interface_name), has_carrier=netutils.interface_has_carrier(interface_name), lldp=None, vendor=vendor, product=hardware._get_device_info(interface_name, 'net', 'device'), client_id=client_id)
def get_interface_info(self, interface_name): addr_path = '{}/class/net/{}/address'.format(self.sys_path, interface_name) with open(addr_path) as addr_file: mac_addr = addr_file.read().strip() return NetworkInterface( interface_name, mac_addr, ipv4_address=self.get_ipv4_addr(interface_name), has_carrier=netutils.interface_has_carrier(interface_name), vendor=_get_device_info(interface_name, 'net', 'vendor'), product=_get_device_info(interface_name, 'net', 'device'))
def get_interface_info(self, interface_name): addr_path = '{}/class/net/{}/address'.format(self.sys_path, interface_name) with open(addr_path) as addr_file: mac_addr = addr_file.read().strip() return NetworkInterface( interface_name, mac_addr, ipv4_address=self.get_ipv4_addr(interface_name), has_carrier=netutils.interface_has_carrier(interface_name), vendor=_get_device_info(interface_name, 'net', 'vendor'), product=_get_device_info(interface_name, 'net', 'device'), biosdevname=self.get_bios_given_nic_name(interface_name))
def get_interface_info(self, interface_name): mac_addr = netutils.get_mac_addr(interface_name) if mac_addr is None: raise errors.IncompatibleHardwareMethodError() return NetworkInterface( interface_name, mac_addr, ipv4_address=self.get_ipv4_addr(interface_name), has_carrier=netutils.interface_has_carrier(interface_name), vendor=_get_device_info(interface_name, 'net', 'vendor'), product=_get_device_info(interface_name, 'net', 'device'), biosdevname=self.get_bios_given_nic_name(interface_name))