def getLinks(): """Return an iterator of Link objects, each per a link in the system.""" for data in link.iter_links(): try: yield Link.fromDict(data) except IOError: # If a link goes missing we just don't report it continue
def list(): dpdk_links = (dpdk.link_info(dev_name, dev_info['pci_addr']) for dev_name, dev_info in six.viewitems(dpdk.get_dpdk_devices())) for properties in itertools.chain(link.iter_links(), dpdk_links): if 'type' not in properties: properties['type'] = get_alternative_type(properties['name']) yield properties
def getLinks(): """Return an iterator of Link objects, each per a link in the system.""" dpdk_links = ( dpdk.link_info(dev_name, dev_info['pci_addr']) for dev_name, dev_info in six.viewitems(dpdk.get_dpdk_devices())) for data in itertools.chain(link.iter_links(), dpdk_links): try: yield Link.fromDict(data) except IOError: # If a link goes missing we just don't report it continue
def getLinks(): """Return an iterator of Link objects, each per a link in the system.""" dpdk_links = (dpdk.link_info(dev_name, dev_info['pci_addr']) for dev_name, dev_info in six.viewitems(dpdk.get_dpdk_devices())) for data in itertools.chain(link.iter_links(), dpdk_links): try: yield Link.fromDict(data) except IOError: # If a link goes missing we just don't report it continue
def ifaceUsed(iface): """Lightweight implementation of bool(Netinfo.ifaceUsers()) that does not require a NetInfo object.""" if os.path.exists(os.path.join(netinfo.NET_PATH, iface, 'brport')): return True # Is it a port for linkDict in nl_link.iter_links(): if linkDict['name'] == iface and 'master' in linkDict: # Is it a slave return True if linkDict.get('device') == iface and linkDict.get('type') == 'vlan': return True # it backs a VLAN for net_name, net_attr in six.viewitems(RunningConfig().networks): if get_net_iface_from_config(net_name, net_attr) == iface: return True return False
def ifaceUsed(iface): """Lightweight implementation of bool(Netinfo.ifaceUsers()) that does not require a NetInfo object.""" if os.path.exists(os.path.join(netinfo.NET_PATH, iface, 'brport')): return True # Is it a port for linkDict in nl_link.iter_links(): if linkDict['name'] == iface and 'master' in linkDict: # Is it a slave return True if linkDict.get('device') == iface and linkDict.get('type') == 'vlan': return True # it backs a VLAN for net_attr in six.itervalues(libvirt.networks()): if net_attr.get('iface') == iface: return True return False
def list(): for properties in link.iter_links(): if 'type' not in properties: properties['type'] = get_alternative_type(properties['name']) yield properties
def vlan_devs_for_iface(iface): for linkDict in nl_link.iter_links(): if linkDict.get('device') == iface and linkDict.get('type') == 'vlan': yield linkDict['name']