def validateNetCfg(self): netcfg = QNetObject.getInstance().netcfg previous_nets = set(self.networks) - set(self.access_cfg.custom_networks) new_networks = self._getNetworks(netcfg) new_networks = set(new_networks) not_in_both = previous_nets ^ new_networks deleted_nets = not_in_both & previous_nets added_nets = not_in_both & new_networks return True, deleted_nets, added_nets
def netLabel(self, interface, network): """ return label for network """ interface_label = interface network_label = str(network) network = IP(network) netcfg = QNetObject.getInstance().netcfg try: interface = netcfg.getInterfaceBySystemName(interface) interface_label = interface.user_label network = netcfg.getNet(network) network_label = network.displayName() except NoMatch: pass return tr("%s: %s") % (interface_label, network_label)
def getNetworks(self): if self.__disabled: return netcfg = QNetObject.getInstance().netcfg if netcfg is None: self.networks = () self.mainwindow.addToInfoArea( tr("The access interface could not load the network configuration"), COLOR_ERROR ) return # list of (interface, network) where interface (str) is the system # name, and network (IPy.IP object) is the network address # (eg. IP('192.168.0.0/24') self.networks = self._getNetworks(netcfg) self.networks += list(self.access_cfg.custom_networks) self.networks.sort()
def _load(self): if not NuConfMainWindow.minimalMode: # before creation of frontends, initialize QNetObject, QHAObject serialized_net_conf = self.init_call('network', 'getNetconfig') if serialized_net_conf is not None: QNetObject.getInstance().netcfg = serialized_net_conf if not self.__has_ha(): return try: serialized_ha_conf = self.init_call('ha', 'getConfig') if serialized_ha_conf is None: return QHAObject.getInstance().hacfg = serialized_ha_conf except (RpcdError, DatastructureIncompatible): # ha backend is not available pass
def __init__(self, client, main_window, parent): QFrame.__init__(self, parent) self._parent = parent self._loading = True self._modified = False self.client = client self.main_window = main_window self.addToInfoArea = self.main_window.addToInfoArea self.q_netobject = QNetObject.getInstance() # try: # self.q_netobject.registerCallbacks(self.acceptNetworkChange, self.handleNetworkChange) # except Exception, err: # raise self.dhcpcfg = None self.range_widgets = set() self.drawGUI() self.resetConf() self._loading = False
def __init__(self, client, parent=None): ScrollArea.__init__(self) if not EDENWALL: raise NuConfModuleDisabled("DHCP") self.error_message = tr("Incorrect DHCP specification") self.client = client self.main_window = parent self.q_netobject = QNetObject.getInstance() # detect when DHCP backend is unavailable : raise NuConfModuleDisabled try: self.main_window.init_call("dhcp", "getDhcpConfig") except RpcdError: #dhcp module was not available, server side self.main_window.addToInfoArea(tr("DHCP interface disabled: DHCP backend not loaded"), category=COLOR_CRITICAL) raise NuConfModuleDisabled("DHCP") else: self.main_window.addToInfoArea(tr("DHCP interface enabled"))
def __init__(self, client, parent): ScrollArea.__init__(self) self.client = client self.mainwindow = parent self._modified = False self.__disabled = False self.net_object = QNetObject.getInitializedInstance(self.client) if EDENWALL: self.vpn_object = QOpenVpnObject.getInstance() self.setupWidgets() self.getConfigs() self.getNetworks() # vpn_config is used to check if the VPN config changed or not self.vpn_config = self.getVPNConfig() self.fillTable() self.net_object.registerCallbacks(self.validateNetCfg, self.updateWithNetCfg) if EDENWALL: self.vpn_object.registerCallbacks(self.validateVpnCfg, self.updateWithVpnCfg) self.mainwindow.addToInfoArea(tr("Access interface enabled"))
def init_qnetobject(): q_netobject = QNetObject.getInstance() q_netobject.cfg = deserialize(a_netconfig)