diff options
author | Casey Deccio <casey@deccio.net> | 2016-08-11 22:53:53 +0300 |
---|---|---|
committer | Casey Deccio <casey@deccio.net> | 2016-08-11 22:53:53 +0300 |
commit | 1303f9e6c9bd5c5bff55dd3aabe2662718d2940e (patch) | |
tree | b8b8ec8bff6e97b836add47a8926e15b54ffd70c | |
parent | 20b897c16d6369be8f3f4125e4068993f0d5ce6d (diff) |
Consider nxdomain_ancestor and follow_mx
-rw-r--r-- | dnsviz/commands/probe.py | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/dnsviz/commands/probe.py b/dnsviz/commands/probe.py index 3e1c3b3..a10577e 100644 --- a/dnsviz/commands/probe.py +++ b/dnsviz/commands/probe.py @@ -195,6 +195,8 @@ class MultiProcessAnalystMixin(object): if name_obj.parent is not None: self.refresh_dependency_references(name_obj.parent, trace+[name_obj.name]) + if name_obj.nxdomain_ancestor is not None: + self.refresh_dependency_references(name_obj.nxdomain_ancestor, trace+[name_obj.name]) if name_obj.dlv_parent is not None: self.refresh_dependency_references(name_obj.dlv_parent, trace+[name_obj.name]) @@ -222,6 +224,14 @@ class MultiProcessAnalystMixin(object): except KeyError: time.sleep(1) self.refresh_dependency_references(name_obj.ns_dependencies[ns], trace+[name_obj.name]) + if self.follow_mx: + for target in name_obj.mx_targets: + while name_obj.mx_targets[target] is None: + try: + name_obj.mx_targets[target] = self.analysis_cache[target] + except KeyError: + time.sleep(1) + self.refresh_dependency_references(name_obj.mx_targets[target], trace+[name_obj.name]) def analyze(self): name_obj = super(MultiProcessAnalystMixin, self).analyze() |