def setNetworkOnbootDefault(self, ksdata): # if something's already enabled, we can just leave the config alone for devName in nm.nm_devices(): if not nm.nm_device_type_is_wifi(devName) and \ network.get_ifcfg_value(devName, "ONBOOT", ROOT_PATH) == "yes": return # the default otherwise: bring up the first wired netdev with link for devName in nm.nm_devices(): if nm.nm_device_type_is_wifi(devName): continue try: link_up = nm.nm_device_carrier(devName) except ValueError as e: continue if link_up: dev = network.NetworkDevice(ROOT_PATH + network.netscriptsDir, devName) dev.loadIfcfgFile() dev.set(('ONBOOT', 'yes')) dev.writeIfcfgFile() for nd in ksdata.network.network: if nd.device == dev.iface: nd.onboot = True break break
def setNetworkOnbootDefault(self, ksdata): # if something's already enabled, we can just leave the config alone for devName in nm.nm_devices(): if nm.nm_device_type_is_wifi(devName): continue try: onboot = nm.nm_device_setting_value(devName, "connection", "autoconnect") except nm.SettingsNotFoundError: continue if not onboot == False: return # the default otherwise: bring up the first wired netdev with link for devName in nm.nm_devices(): if nm.nm_device_type_is_wifi(devName): continue try: link_up = nm.nm_device_carrier(devName) except ValueError: continue if link_up: ifcfg_path = network.find_ifcfg_file_of_device(devName, root_path=ROOT_PATH) if not ifcfg_path: continue ifcfg = network.IfcfgFile(ifcfg_path) ifcfg.read() ifcfg.set(('ONBOOT', 'yes')) ifcfg.write() for nd in ksdata.network.network: if nd.device == devName: nd.onboot = True break break
def setNetworkOnbootDefault(self, ksdata): # if something's already enabled, we can just leave the config alone for devName in nm.nm_devices(): if nm.nm_device_type_is_wifi(devName): continue try: onboot = nm.nm_device_setting_value(devName, "connection", "autoconnect") except nm.DeviceSettingsNotFoundError: continue if not onboot == False: return # the default otherwise: bring up the first wired netdev with link for devName in nm.nm_devices(): if nm.nm_device_type_is_wifi(devName): continue try: link_up = nm.nm_device_carrier(devName) except ValueError: continue if link_up: ifcfg_path = network.find_ifcfg_file_of_device( devName, root_path=ROOT_PATH) if not ifcfg_path: continue ifcfg = network.IfcfgFile(ifcfg_path) ifcfg.read() ifcfg.set(('ONBOOT', 'yes')) ifcfg.write() for nd in ksdata.network.network: if nd.device == devName: nd.onboot = True break break
def get_device_name(devspec): devices = nm.nm_devices() devname = None if not devspec: if "ksdevice" in flags.cmdline: msg = "ksdevice boot parameter" devname = ks_spec_to_device_name(flags.cmdline["ksdevice"]) elif nm.nm_is_connected(): # device activated in stage 1 by network kickstart command msg = "first active device" try: devname = nm.nm_activated_devices()[0] except IndexError: log.debug("get_device_name: NM is connected but no activated devices found") else: msg = "first device found" devname = min(devices) log.info("unspecified network --device in kickstart, using %s (%s)", devname, msg) else: if iutil.lowerASCII(devspec) == "ibft": devname = "" if iutil.lowerASCII(devspec) == "link": for dev in sorted(devices): try: link_up = nm.nm_device_carrier(dev) except ValueError as e: log.debug("get_device_name: %s", e) continue if link_up: devname = dev break else: log.error("Kickstart: No network device with link found") elif iutil.lowerASCII(devspec) == "bootif": if "BOOTIF" in flags.cmdline: # MAC address like 01-aa-bb-cc-dd-ee-ff devname = flags.cmdline["BOOTIF"][3:] devname = devname.replace("-", ":") else: log.error("Using --device=bootif without BOOTIF= boot option supplied") else: devname = devspec if devname and devname not in devices: for d in devices: try: hwaddr = nm.nm_device_hwaddress(d) except ValueError as e: log.debug("get_device_name: %s", e) continue if hwaddr.lower() == devname.lower(): devname = d break else: return "" return devname
def setNetworkOnbootDefault(self, ksdata): if any(nd.onboot for nd in ksdata.network.network if nd.device): return # choose first wired device having link for dev in nm.nm_devices(): if nm.nm_device_type_is_wifi(dev): continue try: link_up = nm.nm_device_carrier(dev) except (nm.UnknownDeviceError, nm.PropertyNotFoundError): continue if link_up: network.update_onboot_value(dev, True, ksdata=ksdata) break
def setNetworkOnbootDefault(self, ksdata): if network.has_some_wired_autoconnect_device(): return # choose first wired device having link for dev in nm.nm_devices(): if nm.nm_device_type_is_wifi(dev): continue try: link_up = nm.nm_device_carrier(dev) except (nm.UnknownDeviceError, nm.PropertyNotFoundError): continue if link_up: network.update_onboot_value(dev, "yes", ksdata) break
def ks_spec_to_device_name(ksspec=""): if not ksspec: ksspec = flags.cmdline.get("ksdevice", "") ksdevice = ksspec bootif_mac = "" if ksdevice == "bootif" and "BOOTIF" in flags.cmdline: bootif_mac = flags.cmdline["BOOTIF"][3:].replace("-", ":").upper() for dev in sorted(nm.nm_devices()): # "eth0" if ksdevice == dev: break # "link" elif ksdevice == "link": try: link_up = nm.nm_device_carrier(dev) except ValueError as e: log.debug("ks_spec_to_device_name: %s", e) continue if link_up: ksdevice = dev break # "XX:XX:XX:XX:XX:XX" (mac address) elif ":" in ksdevice: try: hwaddr = nm.nm_device_hwaddress(dev) except ValueError as e: log.debug("ks_spec_to_device_name: %s", e) continue if ksdevice.lower() == hwaddr.lower(): ksdevice = dev break # "bootif" and BOOTIF==XX:XX:XX:XX:XX:XX elif ksdevice == "bootif": try: hwaddr = nm.nm_device_hwaddress(dev) except ValueError as e: log.debug("ks_spec_to_device_name: %s", e) continue if bootif_mac.lower() == hwaddr.lower(): ksdevice = dev break return ksdevice
def ks_spec_to_device_name(ksspec=""): if not ksspec: ksspec = flags.cmdline.get('ksdevice', "") ksdevice = ksspec bootif_mac = '' if ksdevice == 'bootif' and "BOOTIF" in flags.cmdline: bootif_mac = flags.cmdline["BOOTIF"][3:].replace("-", ":").upper() for dev in sorted(nm.nm_devices()): # "eth0" if ksdevice == dev: break # "link" elif ksdevice == 'link': try: link_up = nm.nm_device_carrier(dev) except ValueError as e: log.debug("ks_spec_to_device_name: %s", e) continue if link_up: ksdevice = dev break # "XX:XX:XX:XX:XX:XX" (mac address) elif ':' in ksdevice: try: hwaddr = nm.nm_device_hwaddress(dev) except ValueError as e: log.debug("ks_spec_to_device_name: %s", e) continue if ksdevice.lower() == hwaddr.lower(): ksdevice = dev break # "bootif" and BOOTIF==XX:XX:XX:XX:XX:XX elif ksdevice == 'bootif': try: hwaddr = nm.nm_device_hwaddress(dev) except ValueError as e: log.debug("ks_spec_to_device_name: %s", e) continue if bootif_mac.lower() == hwaddr.lower(): ksdevice = dev break return ksdevice
def get_device_name(devspec): devices = nm.nm_devices() devname = None if not devspec: if "ksdevice" in flags.cmdline: msg = "ksdevice boot parameter" devname = ks_spec_to_device_name(flags.cmdline["ksdevice"]) elif nm.nm_is_connected(): # device activated in stage 1 by network kickstart command msg = "first active device" try: devname = nm.nm_activated_devices()[0] except IndexError: log.debug( "get_device_name: NM is connected but no activated devices found" ) else: msg = "first device found" devname = min(devices) log.info("unspecified network --device in kickstart, using %s (%s)", devname, msg) else: if iutil.lowerASCII(devspec) == "ibft": devname = "" if iutil.lowerASCII(devspec) == "link": for dev in sorted(devices): try: link_up = nm.nm_device_carrier(dev) except ValueError as e: log.debug("get_device_name: %s", e) continue if link_up: devname = dev break else: log.error("Kickstart: No network device with link found") elif iutil.lowerASCII(devspec) == "bootif": if "BOOTIF" in flags.cmdline: # MAC address like 01-aa-bb-cc-dd-ee-ff devname = flags.cmdline["BOOTIF"][3:] devname = devname.replace("-", ":") else: log.error( "Using --device=bootif without BOOTIF= boot option supplied" ) else: devname = devspec if devname and devname not in devices: for d in devices: try: hwaddr = nm.nm_device_hwaddress(d) except ValueError as e: log.debug("get_device_name: %s", e) continue if hwaddr.lower() == devname.lower(): devname = d break else: return "" return devname