コード例 #1
0
 def test_def(self, log):
     #print(str(log))
     if isinstance(
             self.state,
             StartState) and log.rec_queried == "TXT" and log.level is None:
         self.state = SuccessState(log, self.get_test_result)
     elif check_a(log.rec_queried) and log.level == "b":
         self.state = FailureState(log, self.get_test_result)
コード例 #2
0
ファイル: Test10.py プロジェクト: Tarthir/SPFLogs
 def test_def(self, log):
     #print(str(log))
     if isinstance(self.state, StartState) and log.rec_queried == "TXT":
         self.state = BaseState(log, self.get_test_result)
     elif isinstance(self.state, BaseState) and check_a(log.rec_queried):
         if log.level == "e" or log.level == "f":
             self.state = SuccessState(log, self.get_test_result)
             self.succeeded[log.generated_name] = True
コード例 #3
0
 def test_def(self, log):
     # Success means they had the tcp flag
     #print(str(log))
     if log.tcp == "T":
         self.state = SuccessState(log, self.get_test_result)
     # only fail if we have not already succeeded, just in case
     elif not isinstance(self.state, SuccessState):
         self.state = FailureState(log, self.get_test_result)
コード例 #4
0
 def test_def(self, log):
     #print(str(log))
     if isinstance(self.state, StartState) and log.rec_queried == "TXT":
         self.state = BaseState(log, self.get_test_result)
     elif isinstance(
             self.state,
             BaseState) and log.level == "b" and log.rec_queried == "MX":
         self.state = SuccessState(log, self.get_test_result)
     #elif isinstance(self.state, SuccessState):
     #self.state = FailureState(log, self.get_test_result)
     elif isinstance(
             self.state, SuccessState) and log.level == "b" and check_a(
                 log.rec_queried):  # for queries after initial failure
         self.state = FailureState(log, self.get_test_result)
コード例 #5
0
 def test_def(self, log):
     #print(str(log))
     # b means we have succeeded, all other queries are fine, no need to check
     if isinstance(
             self.state,
             StartState) and log.rec_queried == "TXT" and log.level == None:
         self.state = BaseState(log, self.get_test_result)
     elif isinstance(
             self.state,
             BaseState) and log.level == "l1" and log.rec_queried == "TXT":
         self.state = do_state_change("l1", log, self.dyn_classes,
                                      self.get_test_result)
     elif self.state.name == "l1" and log.level == "b" and check_a(
             log.rec_queried):
         self.state = SuccessState(log, self.get_test_result)
コード例 #6
0
 def test_def(self, log):
     #print(str(log))
     if isinstance(self.state, StartState) and "." in self.sent_to:
         self.state = do_state_change("to_ipv4", log, self.dyn_classes,
                                      self.get_test_result)
         self.sent_to = "to_ipv4"
         # get the ip address associated with the generated name with an ip address in new_true_domains.txt
     elif isinstance(self.state, StartState) and ":" in self.sent_to:
         self.state = do_state_change("to_ipv6", log, self.dyn_classes,
                                      self.get_test_result)
         self.sent_to = "to_ipv6"
     elif self.state.name == "to_ipv6" or self.state.name == "to_ipv4" or isinstance(
             self.state, FailureState):
         # ipv_protocol is the label "ipv4" or "ipv6" that was in the query
         if log.rec_queried == s.States.TXT.value and log.ipv_protocol is not None:
             self.state = SuccessState(log, self.get_test_result)
         else:
             self.state = FailureState(log, self.get_test_result)
コード例 #7
0
ファイル: Test21.py プロジェクト: Tarthir/SPFLogs
    def do_testing(self, log_list):
        self.timed_out = False
        self.total_time = 0.0
        self.last_node = None
        self.biggest_depth = -math.inf
        self.largest_branch = "a"
        #print("\n")
        first = log_list[0]
        last = log_list[len(log_list) - 1]
        self.timed_out = (last.sec_from_1970 - first.sec_from_1970 > 20)
        self.total_time = last.sec_from_1970 - first.sec_from_1970
        if not self.timed_out:
            self.state = SuccessState(last, self.get_test_result)
        else:
            self.state = FailureState(last, self.get_test_result)
        for log in log_list:
            #print(str(log))
            node = log.level
            #print("***log.level: %s\trec_type: %s**" % (node, log.rec_queried))
            stripped_node = None
            depth = self.biggest_depth
            branch = self.largest_branch
            if node == None or log.rec_queried != "TXT":
                continue
            stripped_node = node[:1]
            if stripped_node == "l":
                depth = int(node[1])
                branch = node[2]
                #print("depth: %s\tdeepest: %s" % (str(depth), str(self.biggest_depth)))
                if depth >= self.biggest_depth:
                    self.biggest_depth = depth
                else:
                    continue
                #print("branch: %s\tlargest: %s" % (str(branch), str(self.largest_branch)))
                if branch > self.largest_branch:
                    self.largest_branch = branch
                self.last_node = "l" + str(
                    self.biggest_depth) + self.largest_branch
        #print("***Last Node: %s" % self.last_node)

        self.state.get_final_result(log_list)