예제 #1
0
파일: ip_source.py 프로젝트: Suwmlee/XX-Net
    def load_ip_range(self):
        self.ip_range_map = {}
        self.ip_range_list = []
        self.ip_range_index = []
        self.candidate_amount_ip = 0

        content = self.load_range_content()
        lines = content.splitlines()
        for line in lines:
            if len(line) == 0 or line[0] == '#':
                continue

            try:
                begin, end = utils.split_ip(line)
                nbegin = utils.ip_string_to_num(begin)
                nend = utils.ip_string_to_num(end)
                if not nbegin or not nend or nend < nbegin:
                    self.logger.warn("load ip range:%s fail", line)
                    continue
            except Exception as e:
                self.logger.exception("load ip range:%s fail:%r", line, e)
                continue

            self.ip_range_map[self.candidate_amount_ip] = [nbegin, nend]
            self.ip_range_list.append( [nbegin, nend] )
            self.ip_range_index.append(self.candidate_amount_ip)
            num = nend - nbegin
            self.candidate_amount_ip += num
            # print utils.ip_num_to_string(nbegin), utils.ip_num_to_string(nend), num

        self.ip_range_index.sort()
예제 #2
0
    def load_ip_range(self):
        self.ip_range_map = {}
        self.ip_range_list = []
        self.ip_range_index = []
        self.candidate_amount_ip = 0

        content = self.load_range_content()
        lines = content.splitlines()
        for line in lines:
            if len(line) == 0 or line[0] == '#':
                continue

            try:
                begin, end = utils.split_ip(line)
                nbegin = utils.ip_string_to_num(begin)
                nend = utils.ip_string_to_num(end)
                if not nbegin or not nend or nend < nbegin:
                    self.logger.warn("load ip range:%s fail", line)
                    continue
            except Exception as e:
                self.logger.exception("load ip range:%s fail:%r", line, e)
                continue

            self.ip_range_map[self.candidate_amount_ip] = [nbegin, nend]
            self.ip_range_list.append([nbegin, nend])
            self.ip_range_index.append(self.candidate_amount_ip)
            num = nend - nbegin
            self.candidate_amount_ip += num
            # print utils.ip_num_to_string(nbegin), utils.ip_num_to_string(nend), num

        self.ip_range_index.sort()
예제 #3
0
    def check_cors(self):
        logs.INFO("Checking web portal cross origin policy")

        if utils.get_item_from_obj(self.conf_obj,
                                   "hadoop.http.cross-origin.enabled",
                                   default="false") == "true":
            allowed_origins = utils.split_ip(
                utils.get_item_from_obj(
                    self.conf_obj,
                    "hadoop.http.cross-origin.allowed-origins",
                    default="true"))
            if "*" in allowed_origins:
                logs.ISSUE("Cross origin is wildcard.")
                logs.RECOMMENDATION(
                    " / qualify hadoop.http.cross-origin.allowed-origins")
            else:
                logs.DEBUG(
                    f"CORS is enabled but only allowed to {','.join(allowed_origins)}"
                )
        else:
            logs.DEBUG("CORS is off")