Exemplo n.º 1
0
    def query(self, name, rdtype, timeout):
        answers = []
        with resolver.Resolver(timeout) as r:
            for ns in self.checker.ns:
                addr = random.choice(resolver.addresses([ns]))
                answers.append(r.query_at(name, rdtype, addr,
                                          self.checker.dnssec))

        for a, b in zip(answers, answers[1:]):
            if not same_answer(a.get(), b.get()):
                raise exceptions.NSDisagree('%s != %s' % (a, b))

        return answers[0].get()
Exemplo n.º 2
0
    def query(self, name, rdtype, timeout):
        answers = []
        with resolver.Resolver(timeout) as r:
            for ns in self.checker.ns:
                addr = random.choice(resolver.addresses([ns]))
                answers.append(
                    r.query_at(name, rdtype, addr, self.checker.dnssec))

        for a, b in zip(answers, answers[1:]):
            if not same_answer(a.get(), b.get()):
                raise exceptions.NSDisagree('%s != %s' % (a, b))

        return answers[0].get()
Exemplo n.º 3
0
    def query(self, name, rdtype, timeout):
        answers = []
        for ns in self.checker.ns:
            addr = random.choice(resolver.addresses([ns]))
            with resolver.Resolver(timeout) as r:
                answers.append(r.query_at(name, rdtype, addr,
                                          self.checker.dnssec))

        raised = None
        for ans in answers:
            try:
                return ans.get()
            except Exception as e:
                raised = e
                pass

        if raised:
            raise raised
Exemplo n.º 4
0
    def query(self, name, rdtype, timeout):
        answers = []
        for ns in self.checker.ns:
            addr = random.choice(resolver.addresses([ns]))
            with resolver.Resolver(timeout) as r:
                answers.append(
                    r.query_at(name, rdtype, addr, self.checker.dnssec))

        raised = None
        for ans in answers:
            try:
                return ans.get()
            except Exception as e:
                raised = e
                pass

        if raised:
            raise raised