コード例 #1
0
ファイル: base.py プロジェクト: maximerobin/Ufwi
    def isValidWithMsg(self):
        if not self.controller_ip:
            return False, tr("Please specify the authentication server(s).")

        ok, msg = _ad_valid_passwordserver(self.controller_ip)
        if not ok:
            return False, msg

        if not self.domain:
            return False, tr("Please specify the domain name.")

        if not self.user:
            return False, tr("Please specify the user name used to join the domain.")

        if "\\" in self.user:
            return False, tr("Do not specify the domain in the user name.")

        if not self.password:
            return False, tr("Please specify the password used to join the domain.")

        if not check_domain(self.domain):
            return False, tr("Invalid domain.")

        if not check_hostname(self.workgroup):
            return False, tr("Invalid workgroup name.")

        return True, ''
コード例 #2
0
ファイル: syslog_export_cfg.py プロジェクト: maximerobin/Ufwi
    def isValidWithMsg(self):
        if not isinstance(self.servers, list):
            return False, tr("The servers parameter must be a list.")
        if not self.enabled:
            return True, ''

        # Syslog export is enabled, so we check the parameters.
        if not self.servers or not self.servers[0] or \
                self.servers[0].get("address", "") == "":
            return False, tr("You must enter the address of a syslog server.")
        component_enabled = False
        for component in self.components.values():
            if component.get("enabled", False):
                component_enabled = True
                break
        if not component_enabled:
            return False, tr("You must enable at least one component.")
        for server in self.servers:
            if not isinstance(server, dict):
                return False, tr(
                    "At least one of the configured servers does "
                    "not contain the expected type of information:") + \
                    " %s." % server
            if "address" not in server:
                return False, tr(
                    "The following server does not have an address:") + \
                    " %s." % server
            if "port" not in server:
                return False, tr(
                    "The following server does not have a port:") + \
                    " %s." % server
            if not (check_ip_or_domain(server["address"]) or
                    check_hostname(server["address"])):
                return False, tr(
                    "The syslog server must be an IP address or a FQDN.")
        if not isinstance(self.components, dict):
            return False, tr(
                "The components parameter must be a dictionary.")
        for name, component in self.components.items():
            if not component["facility"].startswith("local"):
                return False, tr("The component") + " %s " % name + \
                    tr("has an invalid facility:") + \
                    " %s. " % component["facility"] + tr(
                    "It should begin with \"local\".")
        return True, ''
コード例 #3
0
ファイル: hostnamecfg.py プロジェクト: maximerobin/Ufwi
 def isValid(self):
     return check_hostname(self.hostname)
コード例 #4
0
ファイル: unix_service.py プロジェクト: maximerobin/Ufwi
 def check_hostname(self, value):
     return check_hostname(value)